diff --git a/sorbet/rbi/gems/json@2.7.1.rbi b/sorbet/rbi/gems/json@2.7.2.rbi similarity index 94% rename from sorbet/rbi/gems/json@2.7.1.rbi rename to sorbet/rbi/gems/json@2.7.2.rbi index e22ce040e..3ef0f88c7 100644 --- a/sorbet/rbi/gems/json@2.7.1.rbi +++ b/sorbet/rbi/gems/json@2.7.2.rbi @@ -6,7 +6,7 @@ # Extends any Class to include _json_creatable?_ method. # -# source://json//lib/json/common.rb#689 +# source://json//lib/json/common.rb#690 class Class < ::Module # Returns true if this class can be used to create an instance # from a serialised JSON string. The class has to implement a class @@ -15,7 +15,7 @@ class Class < ::Module # # @return [Boolean] # - # source://json//lib/json/common.rb#694 + # source://json//lib/json/common.rb#695 def json_creatable?; end end @@ -630,7 +630,7 @@ module JSON # Output: # {"foo":[0,1],"bar":{"baz":2,"bat":3},"bam":"bad"} # - # source://json//lib/json/common.rb#614 + # source://json//lib/json/common.rb#615 def dump(obj, anIO = T.unsafe(nil), limit = T.unsafe(nil), kwargs = T.unsafe(nil)); end # :call-seq: @@ -647,13 +647,13 @@ module JSON # # Raises SystemStackError (stack level too deep): # JSON.fast_generate(a) # - # source://json//lib/json/common.rb#328 + # source://json//lib/json/common.rb#329 def fast_generate(obj, opts = T.unsafe(nil)); end # :stopdoc: # I want to deprecate these later, so I'll first be silent about them, and later delete them. # - # source://json//lib/json/common.rb#328 + # source://json//lib/json/common.rb#329 def fast_unparse(obj, opts = T.unsafe(nil)); end # :call-seq: @@ -692,7 +692,7 @@ module JSON # # Raises JSON::NestingError (nesting of 100 is too deep): # JSON.generate(a) # - # source://json//lib/json/common.rb#299 + # source://json//lib/json/common.rb#300 def generate(obj, opts = T.unsafe(nil)); end # :call-seq: @@ -823,7 +823,7 @@ module JSON # #"Admin", "password"=>"0wn3d"}>} # - # source://json//lib/json/common.rb#540 + # source://json//lib/json/common.rb#541 def load(source, proc = T.unsafe(nil), options = T.unsafe(nil)); end # :call-seq: @@ -834,7 +834,7 @@ module JSON # # See method #parse. # - # source://json//lib/json/common.rb#248 + # source://json//lib/json/common.rb#249 def load_file(filespec, opts = T.unsafe(nil)); end # :call-seq: @@ -845,10 +845,10 @@ module JSON # # See method #parse! # - # source://json//lib/json/common.rb#259 + # source://json//lib/json/common.rb#260 def load_file!(filespec, opts = T.unsafe(nil)); end - # source://json//lib/json/common.rb#642 + # source://json//lib/json/common.rb#643 def merge_dump_options(opts, strict: T.unsafe(nil)); end # :call-seq: @@ -899,7 +899,7 @@ module JSON # # Raises JSON::ParserError (783: unexpected token at ''): # JSON.parse('') # - # source://json//lib/json/common.rb#218 + # source://json//lib/json/common.rb#219 def parse(source, opts = T.unsafe(nil)); end # :call-seq: @@ -914,7 +914,7 @@ module JSON # which disables checking for nesting depth. # - Option +allow_nan+, if not provided, defaults to +true+. # - # source://json//lib/json/common.rb#233 + # source://json//lib/json/common.rb#234 def parse!(source, opts = T.unsafe(nil)); end # :call-seq: @@ -947,28 +947,28 @@ module JSON # } # } # - # source://json//lib/json/common.rb#373 + # source://json//lib/json/common.rb#374 def pretty_generate(obj, opts = T.unsafe(nil)); end # :stopdoc: # I want to deprecate these later, so I'll first be silent about them, and later delete them. # - # source://json//lib/json/common.rb#373 + # source://json//lib/json/common.rb#374 def pretty_unparse(obj, opts = T.unsafe(nil)); end # Recursively calls passed _Proc_ if the parsed data structure is an _Array_ or _Hash_ # - # source://json//lib/json/common.rb#558 + # source://json//lib/json/common.rb#559 def recurse_proc(result, &proc); end - # source://json//lib/json/common.rb#540 + # source://json//lib/json/common.rb#541 def restore(source, proc = T.unsafe(nil), options = T.unsafe(nil)); end # :stopdoc: # I want to deprecate these later, so I'll first be silent about them, and # later delete them. # - # source://json//lib/json/common.rb#299 + # source://json//lib/json/common.rb#300 def unparse(obj, opts = T.unsafe(nil)); end class << self @@ -984,26 +984,26 @@ module JSON # ruby = [0, 1, nil] # JSON[ruby] # => '[0,1,null]' # - # source://json//lib/json/common.rb#21 + # source://json//lib/json/common.rb#22 def [](object, opts = T.unsafe(nil)); end - # source://json//lib/json/common.rb#84 + # source://json//lib/json/common.rb#85 def create_fast_state; end # Returns the current create identifier. # See also JSON.create_id=. # - # source://json//lib/json/common.rb#129 + # source://json//lib/json/common.rb#130 def create_id; end # Sets create identifier, which is used to decide if the _json_create_ # hook of a class should be called; initial value is +json_class+: # JSON.create_id # => 'json_class' # - # source://json//lib/json/common.rb#123 + # source://json//lib/json/common.rb#124 def create_id=(new_value); end - # source://json//lib/json/common.rb#94 + # source://json//lib/json/common.rb#95 def create_pretty_state; end # Return the constant located at _path_. The format of _path_ has to be @@ -1011,7 +1011,7 @@ module JSON # level (absolute namespace path?). If there doesn't exist a constant at # the given path, an ArgumentError is raised. # - # source://json//lib/json/common.rb#45 + # source://json//lib/json/common.rb#46 def deep_const_get(path); end # :call-seq: @@ -1042,7 +1042,7 @@ module JSON # Output: # {"foo":[0,1],"bar":{"baz":2,"bat":3},"bam":"bad"} # - # source://json//lib/json/common.rb#614 + # source://json//lib/json/common.rb#615 def dump(obj, anIO = T.unsafe(nil), limit = T.unsafe(nil), kwargs = T.unsafe(nil)); end # Sets or returns the default options for the JSON.dump method. @@ -1050,7 +1050,7 @@ module JSON # opts = JSON.dump_default_options # opts # => {:max_nesting=>false, :allow_nan=>true, :script_safe=>false} # - # source://json//lib/json/common.rb#579 + # source://json//lib/json/common.rb#580 def dump_default_options; end # Sets or returns the default options for the JSON.dump method. @@ -1058,7 +1058,7 @@ module JSON # opts = JSON.dump_default_options # opts # => {:max_nesting=>false, :allow_nan=>true, :script_safe=>false} # - # source://json//lib/json/common.rb#579 + # source://json//lib/json/common.rb#580 def dump_default_options=(_arg0); end # :call-seq: @@ -1075,13 +1075,13 @@ module JSON # # Raises SystemStackError (stack level too deep): # JSON.fast_generate(a) # - # source://json//lib/json/common.rb#328 + # source://json//lib/json/common.rb#329 def fast_generate(obj, opts = T.unsafe(nil)); end # :stopdoc: # I want to deprecate these later, so I'll first be silent about them, and later delete them. # - # source://json//lib/json/common.rb#328 + # source://json//lib/json/common.rb#329 def fast_unparse(obj, opts = T.unsafe(nil)); end # :call-seq: @@ -1120,24 +1120,24 @@ module JSON # # Raises JSON::NestingError (nesting of 100 is too deep): # JSON.generate(a) # - # source://json//lib/json/common.rb#299 + # source://json//lib/json/common.rb#300 def generate(obj, opts = T.unsafe(nil)); end # Returns the JSON generator module that is used by JSON. This is # either JSON::Ext::Generator or JSON::Pure::Generator: # JSON.generator # => JSON::Ext::Generator # - # source://json//lib/json/common.rb#106 + # source://json//lib/json/common.rb#107 def generator; end # Set the module _generator_ to be used by JSON. # - # source://json//lib/json/common.rb#61 + # source://json//lib/json/common.rb#62 def generator=(generator); end # Encodes string using String.encode. # - # source://json//lib/json/common.rb#638 + # source://json//lib/json/common.rb#639 def iconv(to, from, string); end # :call-seq: @@ -1268,7 +1268,7 @@ module JSON # #"Admin", "password"=>"0wn3d"}>} # - # source://json//lib/json/common.rb#540 + # source://json//lib/json/common.rb#541 def load(source, proc = T.unsafe(nil), options = T.unsafe(nil)); end # Sets or returns default options for the JSON.load method. @@ -1276,7 +1276,7 @@ module JSON # opts = JSON.load_default_options # opts # => {:max_nesting=>false, :allow_nan=>true, :allow_blank=>true, :create_additions=>true} # - # source://json//lib/json/common.rb#403 + # source://json//lib/json/common.rb#404 def load_default_options; end # Sets or returns default options for the JSON.load method. @@ -1284,7 +1284,7 @@ module JSON # opts = JSON.load_default_options # opts # => {:max_nesting=>false, :allow_nan=>true, :allow_blank=>true, :create_additions=>true} # - # source://json//lib/json/common.rb#403 + # source://json//lib/json/common.rb#404 def load_default_options=(_arg0); end # :call-seq: @@ -1295,7 +1295,7 @@ module JSON # # See method #parse. # - # source://json//lib/json/common.rb#248 + # source://json//lib/json/common.rb#249 def load_file(filespec, opts = T.unsafe(nil)); end # :call-seq: @@ -1306,7 +1306,7 @@ module JSON # # See method #parse! # - # source://json//lib/json/common.rb#259 + # source://json//lib/json/common.rb#260 def load_file!(filespec, opts = T.unsafe(nil)); end # :call-seq: @@ -1357,7 +1357,7 @@ module JSON # # Raises JSON::ParserError (783: unexpected token at ''): # JSON.parse('') # - # source://json//lib/json/common.rb#218 + # source://json//lib/json/common.rb#219 def parse(source, opts = T.unsafe(nil)); end # :call-seq: @@ -1372,19 +1372,19 @@ module JSON # which disables checking for nesting depth. # - Option +allow_nan+, if not provided, defaults to +true+. # - # source://json//lib/json/common.rb#233 + # source://json//lib/json/common.rb#234 def parse!(source, opts = T.unsafe(nil)); end # Returns the JSON parser class that is used by JSON. This is either # JSON::Ext::Parser or JSON::Pure::Parser: # JSON.parser # => JSON::Ext::Parser # - # source://json//lib/json/common.rb#32 + # source://json//lib/json/common.rb#33 def parser; end # Set the JSON parser class _parser_ to be used by JSON. # - # source://json//lib/json/common.rb#35 + # source://json//lib/json/common.rb#36 def parser=(parser); end # :call-seq: @@ -1417,123 +1417,123 @@ module JSON # } # } # - # source://json//lib/json/common.rb#373 + # source://json//lib/json/common.rb#374 def pretty_generate(obj, opts = T.unsafe(nil)); end # :stopdoc: # I want to deprecate these later, so I'll first be silent about them, and later delete them. # - # source://json//lib/json/common.rb#373 + # source://json//lib/json/common.rb#374 def pretty_unparse(obj, opts = T.unsafe(nil)); end # Recursively calls passed _Proc_ if the parsed data structure is an _Array_ or _Hash_ # - # source://json//lib/json/common.rb#558 + # source://json//lib/json/common.rb#559 def recurse_proc(result, &proc); end - # source://json//lib/json/common.rb#540 + # source://json//lib/json/common.rb#541 def restore(source, proc = T.unsafe(nil), options = T.unsafe(nil)); end # Sets or Returns the JSON generator state class that is used by JSON. This is # either JSON::Ext::Generator::State or JSON::Pure::Generator::State: # JSON.state # => JSON::Ext::Generator::State # - # source://json//lib/json/common.rb#111 + # source://json//lib/json/common.rb#112 def state; end # Sets or Returns the JSON generator state class that is used by JSON. This is # either JSON::Ext::Generator::State or JSON::Pure::Generator::State: # JSON.state # => JSON::Ext::Generator::State # - # source://json//lib/json/common.rb#111 + # source://json//lib/json/common.rb#112 def state=(_arg0); end # :stopdoc: # I want to deprecate these later, so I'll first be silent about them, and # later delete them. # - # source://json//lib/json/common.rb#299 + # source://json//lib/json/common.rb#300 def unparse(obj, opts = T.unsafe(nil)); end private - # source://json//lib/json/common.rb#642 + # source://json//lib/json/common.rb#643 def merge_dump_options(opts, strict: T.unsafe(nil)); end end end -# source://json//lib/json/common.rb#117 +# source://json//lib/json/common.rb#118 JSON::CREATE_ID_TLS_KEY = T.let(T.unsafe(nil), String) -# source://json//lib/json/common.rb#114 +# source://json//lib/json/common.rb#115 JSON::DEFAULT_CREATE_ID = T.let(T.unsafe(nil), String) -# source://json//lib/json/generic_object.rb#5 +# source://json//lib/json/generic_object.rb#9 class JSON::GenericObject < ::OpenStruct - # source://json//lib/json/generic_object.rb#63 + # source://json//lib/json/generic_object.rb#67 def as_json(*_arg0); end - # source://json//lib/json/generic_object.rb#47 + # source://json//lib/json/generic_object.rb#51 def to_hash; end - # source://json//lib/json/generic_object.rb#67 + # source://json//lib/json/generic_object.rb#71 def to_json(*a); end - # source://json//lib/json/generic_object.rb#59 + # source://json//lib/json/generic_object.rb#63 def |(other); end class << self - # source://json//lib/json/generic_object.rb#41 + # source://json//lib/json/generic_object.rb#45 def dump(obj, *args); end - # source://json//lib/json/generic_object.rb#21 + # source://json//lib/json/generic_object.rb#25 def from_hash(object); end # Sets the attribute json_creatable # # @param value the value to set the attribute json_creatable to. # - # source://json//lib/json/generic_object.rb#13 + # source://json//lib/json/generic_object.rb#17 def json_creatable=(_arg0); end # @return [Boolean] # - # source://json//lib/json/generic_object.rb#9 + # source://json//lib/json/generic_object.rb#13 def json_creatable?; end - # source://json//lib/json/generic_object.rb#15 + # source://json//lib/json/generic_object.rb#19 def json_create(data); end - # source://json//lib/json/generic_object.rb#36 + # source://json//lib/json/generic_object.rb#40 def load(source, proc = T.unsafe(nil), opts = T.unsafe(nil)); end end end # The base exception for JSON errors. # -# source://json//lib/json/common.rb#140 +# source://json//lib/json/common.rb#141 class JSON::JSONError < ::StandardError class << self - # source://json//lib/json/common.rb#141 + # source://json//lib/json/common.rb#142 def wrap(exception); end end end -# source://json//lib/json/common.rb#6 +# source://json//lib/json/common.rb#7 JSON::NOT_SET = T.let(T.unsafe(nil), Object) -# source://json//lib/json/common.rb#38 +# source://json//lib/json/common.rb#39 JSON::Parser = JSON::Ext::Parser -# source://json//lib/json/common.rb#76 +# source://json//lib/json/common.rb#77 JSON::State = JSON::Ext::Generator::State # For backwards compatibility # -# source://json//lib/json/common.rb#162 +# source://json//lib/json/common.rb#163 JSON::UnparserError = JSON::GeneratorError -# source://json//lib/json/common.rb#652 +# source://json//lib/json/common.rb#653 module Kernel private @@ -1544,18 +1544,18 @@ module Kernel # The _opts_ argument is passed through to generate/parse respectively. See # generate and parse for their documentation. # - # source://json//lib/json/common.rb#679 + # source://json//lib/json/common.rb#680 def JSON(object, *args); end # Outputs _objs_ to STDOUT as JSON strings in the shortest form, that is in # one line. # - # source://json//lib/json/common.rb#657 + # source://json//lib/json/common.rb#658 def j(*objs); end # Outputs _objs_ to STDOUT as JSON strings in a pretty format, with # indentation and over many lines. # - # source://json//lib/json/common.rb#666 + # source://json//lib/json/common.rb#667 def jj(*objs); end end diff --git a/sorbet/rbi/gems/mocha@2.1.0.rbi b/sorbet/rbi/gems/mocha@2.2.0.rbi similarity index 95% rename from sorbet/rbi/gems/mocha@2.1.0.rbi rename to sorbet/rbi/gems/mocha@2.2.0.rbi index 702e0fc36..513b1ce56 100644 --- a/sorbet/rbi/gems/mocha@2.1.0.rbi +++ b/sorbet/rbi/gems/mocha@2.2.0.rbi @@ -37,7 +37,7 @@ class Minitest::Test < ::Minitest::Runnable include ::Mocha::ParameterMatchers include ::Mocha::Hooks include ::Mocha::API - include ::Mocha::Integration::MiniTest::Adapter + include ::Mocha::Integration::Minitest::Adapter end # source://mocha//lib/mocha/version.rb#1 @@ -66,7 +66,7 @@ module Mocha end end -# Methods added to +Test::Unit::TestCase+, +MiniTest::Unit::TestCase+ or equivalent. +# Methods added to +Test::Unit::TestCase+, +Minitest::Unit::TestCase+ or equivalent. # The mock creation methods are {#mock}, {#stub} and {#stub_everything}, all of which return a #{Mock} # which can be further modified by {Mock#responds_like} and {Mock#responds_like_instance_of} methods, # both of which return a {Mock}, too, and can therefore, be chained to the original creation methods. @@ -100,7 +100,7 @@ module Mocha::API # # @example Using expected_methods_vs_return_values Hash to setup expectations. # def test_motor_starts_and_stops - # motor = mock('motor', :start => true, :stop => true) + # motor = mock('motor', start: true, stop: true) # assert motor.start # assert motor.stop # # an error will be raised unless both Motor#start and Motor#stop have been called @@ -115,7 +115,8 @@ module Mocha::API # Builds a new sequence which can be used to constrain the order in which expectations can occur. # - # Specify that an expected invocation must occur within a named {Sequence} by using {Expectation#in_sequence}. + # Specify that an expected invocation must occur within a named {Sequence} by calling {Expectation#in_sequence} + # on each expectation or by passing a block within which all expectations should be constrained by the {Sequence}. # # @example Ensure methods on egg are invoked in correct order. # breakfast = sequence('breakfast') @@ -135,10 +136,19 @@ module Mocha::API # # task_one.execute # task_two.execute + # @example Ensure methods on egg are invoked in the correct order using a block. + # egg = mock('egg') + # sequence('breakfast') do + # egg.expects(:crack) + # egg.expects(:fry) + # egg.expects(:eat) + # end + # @param name [String] name of sequence # @return [Sequence] a new sequence # @see Expectation#in_sequence + # @yield optional block within which expectations should be constrained by the sequence # - # source://mocha//lib/mocha/api.rb#159 + # source://mocha//lib/mocha/api.rb#170 def sequence(name); end # Builds a new state machine which can be used to constrain the order in which expectations can occur. @@ -161,19 +171,20 @@ module Mocha::API # radio.expects(:select_channel).with('BBC World Service').when(power.is('on')) # radio.expects(:adjust_volume).with(-5).when(power.is('on')) # radio.expects(:switch_off).then(power.is('off')) + # @param name [String] name of state machine # @return [StateMachine] a new state machine # @see Expectation#then # @see Expectation#when # @see StateMachine # - # source://mocha//lib/mocha/api.rb#188 + # source://mocha//lib/mocha/api.rb#207 def states(name); end # Builds a new mock object # # @example Using stubbed_methods_vs_return_values Hash to setup stubbed methods. # def test_motor_starts_and_stops - # motor = stub('motor', :start => true, :stop => true) + # motor = stub('motor', start: true, stop: true) # assert motor.start # assert motor.stop # # an error will not be raised even if either Motor#start or Motor#stop has not been called @@ -190,7 +201,7 @@ module Mocha::API # # @example Ignore invocations of irrelevant methods. # def test_motor_stops - # motor = stub_everything('motor', :stop => true) + # motor = stub_everything('motor', stop: true) # assert_nil motor.irrelevant_method_1 # => no error raised # assert_nil motor.irrelevant_method_2 # => no error raised # assert motor.stop @@ -873,16 +884,16 @@ class Mocha::Deprecation end end -# source://mocha//lib/mocha/detection/mini_test.rb#2 +# source://mocha//lib/mocha/detection/minitest.rb#2 module Mocha::Detection; end -# source://mocha//lib/mocha/detection/mini_test.rb#3 -module Mocha::Detection::MiniTest +# source://mocha//lib/mocha/detection/minitest.rb#3 +module Mocha::Detection::Minitest class << self - # source://mocha//lib/mocha/detection/mini_test.rb#4 + # source://mocha//lib/mocha/detection/minitest.rb#4 def testcase; end - # source://mocha//lib/mocha/detection/mini_test.rb#12 + # source://mocha//lib/mocha/detection/minitest.rb#12 def version; end end end @@ -1010,7 +1021,7 @@ class Mocha::Expectation # @private # - # source://mocha//lib/mocha/expectation.rb#698 + # source://mocha//lib/mocha/expectation.rb#704 def definition_location; end # @private @@ -1046,40 +1057,40 @@ class Mocha::Expectation # @private # - # source://mocha//lib/mocha/expectation.rb#674 + # source://mocha//lib/mocha/expectation.rb#680 def inspect; end # @private # @return [Boolean] # - # source://mocha//lib/mocha/expectation.rb#646 + # source://mocha//lib/mocha/expectation.rb#652 def invocations_allowed?; end # @private # - # source://mocha//lib/mocha/expectation.rb#656 + # source://mocha//lib/mocha/expectation.rb#662 def invoke(invocation); end # @private # @return [Boolean] # - # source://mocha//lib/mocha/expectation.rb#641 - def match?(invocation); end + # source://mocha//lib/mocha/expectation.rb#646 + def match?(invocation, ignoring_order: T.unsafe(nil)); end # @private # @return [Boolean] # - # source://mocha//lib/mocha/expectation.rb#636 + # source://mocha//lib/mocha/expectation.rb#641 def matches_method?(method_name); end # @private # - # source://mocha//lib/mocha/expectation.rb#691 + # source://mocha//lib/mocha/expectation.rb#697 def method_signature; end # @private # - # source://mocha//lib/mocha/expectation.rb#681 + # source://mocha//lib/mocha/expectation.rb#687 def mocha_inspect; end # Modifies expectation so that when the expected method is called, it yields multiple times per invocation with the specified +parameter_groups+. @@ -1146,6 +1157,11 @@ class Mocha::Expectation # source://mocha//lib/mocha/expectation.rb#97 def once; end + # @private + # + # source://mocha//lib/mocha/expectation.rb#636 + def ordering_constraints_not_allowing_invocation_now; end + # @private # # source://mocha//lib/mocha/expectation.rb#626 @@ -1153,6 +1169,10 @@ class Mocha::Expectation # Modifies expectation so that when the expected method is called, it raises the specified +exception+ with the specified +message+ i.e. calls +Kernel#raise(exception, message)+. # + # @example Raise specified exception if expected method is invoked. + # object = stub() + # object.stubs(:expected_method).raises(Exception, 'message') + # object.expected_method # => raises exception of class Exception and with message 'message' # @example Raise custom exception with extra constructor parameters by passing in an instance of the exception. # object = stub() # object.stubs(:expected_method).raises(MyException.new('message', 1, 2, 3)) @@ -1162,10 +1182,6 @@ class Mocha::Expectation # object.stubs(:expected_method).raises(Exception1).then.raises(Exception2) # object.expected_method # => raises exception of class Exception1 # object.expected_method # => raises exception of class Exception2 - # @example Raise specified exception if expected method is invoked. - # object = stub() - # object.stubs(:expected_method).raises(Exception, 'message') - # object.expected_method # => raises exception of class Exception and with message 'message' # @example Raise an exception on first invocation of expected method and then return values on subsequent invocations. # object = stub() # object.stubs(:expected_method).raises(Exception).then.returns(2, 3) @@ -1225,7 +1241,7 @@ class Mocha::Expectation # @private # @return [Boolean] # - # source://mocha//lib/mocha/expectation.rb#651 + # source://mocha//lib/mocha/expectation.rb#657 def satisfied?; end # @example Using {#then} as syntactic sugar when specifying values to be returned and exceptions to be raised on consecutive invocations of the expected method. @@ -1254,14 +1270,14 @@ class Mocha::Expectation # Modifies expectation so that when the expected method is called, it throws the specified +tag+ with the specific return value +object+ i.e. calls +Kernel#throw(tag, object)+. # - # @example Throw tag with return value +object+ c.f. +Kernel#throw+. - # object = stub() - # object.stubs(:expected_method).throws(:done, 'result') - # object.expected_method # => throws tag :done and causes catch block to return 'result' # @example Throw tag when expected method is invoked. # object = stub() # object.stubs(:expected_method).throws(:done) # object.expected_method # => throws tag :done + # @example Throw tag with return value +object+ c.f. +Kernel#throw+. + # object = stub() + # object.stubs(:expected_method).throws(:done, 'result') + # object.expected_method # => throws tag :done and causes catch block to return 'result' # @example Throw different tags on consecutive invocations of the expected method. # object = stub() # object.stubs(:expected_method).throws(:done).then.throws(:continue) @@ -1339,13 +1355,13 @@ class Mocha::Expectation # @private # @return [Boolean] # - # source://mocha//lib/mocha/expectation.rb#669 + # source://mocha//lib/mocha/expectation.rb#675 def used?; end # @private # @return [Boolean] # - # source://mocha//lib/mocha/expectation.rb#663 + # source://mocha//lib/mocha/expectation.rb#669 def verified?(assertion_counter = T.unsafe(nil)); end # Constrains the expectation to occur only when the +state_machine+ is in the state specified by +state_predicate+. @@ -1527,9 +1543,9 @@ class Mocha::ExpectationError < ::Exception; end # # This class should only be used by authors of test libraries and not by typical "users" of Mocha. # -# For example, it is used by +Mocha::Integration::MiniTest::Adapter+ in order to have Mocha raise a +MiniTest::Assertion+ which can then be sensibly handled by +MiniTest::Unit::TestCase+. +# For example, it is used by +Mocha::Integration::Minitest::Adapter+ in order to have Mocha raise a +Minitest::Assertion+ which can then be sensibly handled by +Minitest::Unit::TestCase+. # -# @see Mocha::Integration::MiniTest::Adapter +# @see Mocha::Integration::Minitest::Adapter # # source://mocha//lib/mocha/expectation_error_factory.rb#12 class Mocha::ExpectationErrorFactory @@ -1567,7 +1583,7 @@ class Mocha::ExpectationList # source://mocha//lib/mocha/expectation_list.rb#3 def initialize(expectations = T.unsafe(nil)); end - # source://mocha//lib/mocha/expectation_list.rb#48 + # source://mocha//lib/mocha/expectation_list.rb#52 def +(other); end # source://mocha//lib/mocha/expectation_list.rb#7 @@ -1575,18 +1591,21 @@ class Mocha::ExpectationList # @return [Boolean] # - # source://mocha//lib/mocha/expectation_list.rb#44 + # source://mocha//lib/mocha/expectation_list.rb#48 def any?; end - # source://mocha//lib/mocha/expectation_list.rb#40 + # source://mocha//lib/mocha/expectation_list.rb#44 def length; end # source://mocha//lib/mocha/expectation_list.rb#20 - def match(invocation); end + def match(invocation, ignoring_order: T.unsafe(nil)); end - # source://mocha//lib/mocha/expectation_list.rb#24 + # source://mocha//lib/mocha/expectation_list.rb#28 def match_allowing_invocation(invocation); end + # source://mocha//lib/mocha/expectation_list.rb#24 + def match_but_out_of_order(invocation); end + # @return [Boolean] # # source://mocha//lib/mocha/expectation_list.rb#16 @@ -1595,21 +1614,21 @@ class Mocha::ExpectationList # source://mocha//lib/mocha/expectation_list.rb#12 def remove_all_matching_method(method_name); end - # source://mocha//lib/mocha/expectation_list.rb#32 + # source://mocha//lib/mocha/expectation_list.rb#36 def to_a; end - # source://mocha//lib/mocha/expectation_list.rb#36 + # source://mocha//lib/mocha/expectation_list.rb#40 def to_set; end # @return [Boolean] # - # source://mocha//lib/mocha/expectation_list.rb#28 + # source://mocha//lib/mocha/expectation_list.rb#32 def verified?(assertion_counter = T.unsafe(nil)); end private - # source://mocha//lib/mocha/expectation_list.rb#54 - def matching_expectations(invocation); end + # source://mocha//lib/mocha/expectation_list.rb#58 + def matching_expectations(invocation, ignoring_order: T.unsafe(nil)); end end # Integration hooks for test library authors. @@ -1618,12 +1637,12 @@ end # # This module is provided as part of the +Mocha::API+ module and is therefore part of the public API, but should only be used by authors of test libraries and not by typical "users" of Mocha. # -# Integration with Test::Unit and MiniTest are provided as part of Mocha, because they are (or were once) part of the Ruby standard library. Integration with other test libraries is not provided as *part* of Mocha, but is supported by means of the methods in this module. +# Integration with Test::Unit and Minitest are provided as part of Mocha, because they are (or were once) part of the Ruby standard library. Integration with other test libraries is not provided as *part* of Mocha, but is supported by means of the methods in this module. # # See the code in the +Adapter+ modules for examples of how to use the methods in this module. +Mocha::ExpectationErrorFactory+ may be used if you want +Mocha+ to raise a different type of exception. # # @see Mocha::Integration::TestUnit::Adapter -# @see Mocha::Integration::MiniTest::Adapter +# @see Mocha::Integration::Minitest::Adapter # @see Mocha::ExpectationErrorFactory # @see Mocha::API # @@ -1641,7 +1660,13 @@ module Mocha::Hooks # This method should be called after each individual test has finished (including after any "teardown" code). # # source://mocha//lib/mocha/hooks.rb#38 - def mocha_teardown; end + def mocha_teardown(origin = T.unsafe(nil)); end + + # Returns a string representing the unit test name, to be included in some Mocha + # to help track down potential bugs. + # + # source://mocha//lib/mocha/hooks.rb#44 + def mocha_test_name; end # Verifies that all mock expectations have been met (only for use by authors of test libraries). # @@ -1752,55 +1777,60 @@ class Mocha::Integration::AssertionCounter def increment; end end -# source://mocha//lib/mocha/integration/mini_test/adapter.rb#7 -module Mocha::Integration::MiniTest +# source://mocha//lib/mocha/integration/minitest/adapter.rb#7 +module Mocha::Integration::Minitest class << self - # source://mocha//lib/mocha/integration/mini_test.rb#8 + # source://mocha//lib/mocha/integration/minitest.rb#8 def activate; end end end -# Integrates Mocha into recent versions of MiniTest. +# Integrates Mocha into recent versions of Minitest. # # See the source code for an example of how to integrate Mocha into a test library. # -# source://mocha//lib/mocha/integration/mini_test/adapter.rb#11 -module Mocha::Integration::MiniTest::Adapter +# source://mocha//lib/mocha/integration/minitest/adapter.rb#11 +module Mocha::Integration::Minitest::Adapter include ::Mocha::ParameterMatchers include ::Mocha::Hooks include ::Mocha::API # @private # - # source://mocha//lib/mocha/integration/mini_test/adapter.rb#45 + # source://mocha//lib/mocha/integration/minitest/adapter.rb#45 def after_teardown; end # @private # - # source://mocha//lib/mocha/integration/mini_test/adapter.rb#30 + # source://mocha//lib/mocha/integration/minitest/adapter.rb#30 def before_setup; end # @private # - # source://mocha//lib/mocha/integration/mini_test/adapter.rb#36 + # source://mocha//lib/mocha/integration/minitest/adapter.rb#36 def before_teardown; end + # @private + # + # source://mocha//lib/mocha/integration/minitest/adapter.rb#51 + def mocha_test_name; end + class << self # @private # @return [Boolean] # - # source://mocha//lib/mocha/integration/mini_test/adapter.rb#15 - def applicable_to?(mini_test_version); end + # source://mocha//lib/mocha/integration/minitest/adapter.rb#15 + def applicable_to?(minitest_version); end # @private # - # source://mocha//lib/mocha/integration/mini_test/adapter.rb#20 + # source://mocha//lib/mocha/integration/minitest/adapter.rb#20 def description; end # @private # @private # - # source://mocha//lib/mocha/integration/mini_test/adapter.rb#25 + # source://mocha//lib/mocha/integration/minitest/adapter.rb#25 def included(_mod); end end end @@ -1955,12 +1985,12 @@ class Mocha::Mock # @private # @return [Mock] a new instance of Mock # - # source://mocha//lib/mocha/mock.rb#273 + # source://mocha//lib/mocha/mock.rb#275 def initialize(mockery, name = T.unsafe(nil), receiver = T.unsafe(nil)); end # @private # - # source://mocha//lib/mocha/mock.rb#297 + # source://mocha//lib/mocha/mock.rb#299 def __expectations__; end # Adds an expectation that the specified method must be called exactly once with any parameters. @@ -1980,7 +2010,7 @@ class Mocha::Mock # object.expected_method # => error raised when expected method invoked second time # @example Setup multiple expectations using +expected_methods_vs_return_values+. # object = mock() - # object.expects(:expected_method_one => :result_one, :expected_method_two => :result_two) + # object.expects(expected_method_one: :result_one, expected_method_two: :result_two) # # # is exactly equivalent to # @@ -1997,7 +2027,7 @@ class Mocha::Mock # @private # # source://mocha//lib/mocha/mock.rb#346 - def __expire__; end + def __expire__(origin); end def __singleton_class__; end @@ -2011,7 +2041,7 @@ class Mocha::Mock # # no error raised # @example Setup multiple expectations using +stubbed_methods_vs_return_values+. # object = mock() - # object.stubs(:stubbed_method_one => :result_one, :stubbed_method_two => :result_two) + # object.stubs(stubbed_method_one: :result_one, stubbed_method_two: :result_two) # # # is exactly equivalent to # @@ -2022,7 +2052,7 @@ class Mocha::Mock # @overload stubs # @return [Expectation] last-built expectation which can be further modified by methods on {Expectation}. # - # source://mocha//lib/mocha/mock.rb#148 + # source://mocha//lib/mocha/mock.rb#149 def __stubs__(method_name_or_hash, backtrace = T.unsafe(nil)); end # @private @@ -2033,7 +2063,7 @@ class Mocha::Mock # @private # - # source://mocha//lib/mocha/mock.rb#307 + # source://mocha//lib/mocha/mock.rb#309 def all_expectations; end # @private @@ -2049,7 +2079,7 @@ class Mocha::Mock # @private # - # source://mocha//lib/mocha/mock.rb#285 + # source://mocha//lib/mocha/mock.rb#287 def everything_stubbed; end # Adds an expectation that the specified method must be called exactly once with any parameters. @@ -2069,7 +2099,7 @@ class Mocha::Mock # object.expected_method # => error raised when expected method invoked second time # @example Setup multiple expectations using +expected_methods_vs_return_values+. # object = mock() - # object.expects(:expected_method_one => :result_one, :expected_method_two => :result_two) + # object.expects(expected_method_one: :result_one, expected_method_two: :result_two) # # # is exactly equivalent to # @@ -2095,7 +2125,7 @@ class Mocha::Mock # @private # - # source://mocha//lib/mocha/mock.rb#313 + # source://mocha//lib/mocha/mock.rb#314 def method_missing(symbol, *arguments, **_arg2, &block); end # @private @@ -2150,7 +2180,7 @@ class Mocha::Mock # @return [Mock] the same {Mock} instance, thereby allowing invocations of other {Mock} methods to be chained. # @see #responds_like_instance_of # - # source://mocha//lib/mocha/mock.rb#235 + # source://mocha//lib/mocha/mock.rb#237 def quacks_like(responder); end # Constrains the {Mock} instance so that it can only expect or stub methods to which an instance of the +responder_class+ responds publicly. The constraint is only applied at method invocation time. Note that the responder instance is instantiated using +Class#allocate+. @@ -2181,7 +2211,7 @@ class Mocha::Mock # @return [Mock] the same {Mock} instance, thereby allowing invocations of other {Mock} methods to be chained. # @see #responds_like # - # source://mocha//lib/mocha/mock.rb#268 + # source://mocha//lib/mocha/mock.rb#270 def quacks_like_instance_of(responder_class); end # Constrains the {Mock} instance so that it can only expect or stub methods to which +responder+ responds publicly. The constraint is only applied at method invocation time. @@ -2231,7 +2261,7 @@ class Mocha::Mock # @return [Mock] the same {Mock} instance, thereby allowing invocations of other {Mock} methods to be chained. # @see #responds_like_instance_of # - # source://mocha//lib/mocha/mock.rb#235 + # source://mocha//lib/mocha/mock.rb#237 def responds_like(responder); end # Constrains the {Mock} instance so that it can only expect or stub methods to which an instance of the +responder_class+ responds publicly. The constraint is only applied at method invocation time. Note that the responder instance is instantiated using +Class#allocate+. @@ -2262,12 +2292,12 @@ class Mocha::Mock # @return [Mock] the same {Mock} instance, thereby allowing invocations of other {Mock} methods to be chained. # @see #responds_like # - # source://mocha//lib/mocha/mock.rb#268 + # source://mocha//lib/mocha/mock.rb#270 def responds_like_instance_of(responder_class); end # @private # - # source://mocha//lib/mocha/mock.rb#302 + # source://mocha//lib/mocha/mock.rb#304 def stub_everything; end # Adds an expectation that the specified method may be called any number of times with any parameters. @@ -2280,7 +2310,7 @@ class Mocha::Mock # # no error raised # @example Setup multiple expectations using +stubbed_methods_vs_return_values+. # object = mock() - # object.stubs(:stubbed_method_one => :result_one, :stubbed_method_two => :result_two) + # object.stubs(stubbed_method_one: :result_one, stubbed_method_two: :result_two) # # # is exactly equivalent to # @@ -2291,7 +2321,7 @@ class Mocha::Mock # @overload stubs # @return [Expectation] last-built expectation which can be further modified by methods on {Expectation}. # - # source://mocha//lib/mocha/mock.rb#148 + # source://mocha//lib/mocha/mock.rb#149 def stubs(method_name_or_hash, backtrace = T.unsafe(nil)); end # Removes the specified stubbed methods (added by calls to {#expects} or {#stubs}) and all expectations associated with them. @@ -2311,17 +2341,17 @@ class Mocha::Mock # multiplier.unstub(:triple) # @param method_names [Array] names of methods to unstub. # - # source://mocha//lib/mocha/mock.rb#180 + # source://mocha//lib/mocha/mock.rb#182 def unstub(*method_names); end private # @raise [StubbingError] # - # source://mocha//lib/mocha/mock.rb#389 + # source://mocha//lib/mocha/mock.rb#393 def check_expiry; end - # source://mocha//lib/mocha/mock.rb#383 + # source://mocha//lib/mocha/mock.rb#387 def check_responder_responds_to(symbol); end # source://mocha//lib/mocha/mock.rb#372 @@ -2336,17 +2366,17 @@ end # source://mocha//lib/mocha/mockery.rb#13 class Mocha::Mockery - # source://mocha//lib/mocha/mockery.rb#134 + # source://mocha//lib/mocha/mockery.rb#138 def logger; end # Sets the attribute logger # # @param value the value to set the attribute logger to. # - # source://mocha//lib/mocha/mockery.rb#132 + # source://mocha//lib/mocha/mockery.rb#136 def logger=(_arg0); end - # source://mocha//lib/mocha/mockery.rb#112 + # source://mocha//lib/mocha/mockery.rb#116 def mocha_inspect; end # source://mocha//lib/mocha/mockery.rb#66 @@ -2364,9 +2394,12 @@ class Mocha::Mockery # source://mocha//lib/mocha/mockery.rb#74 def new_state_machine(name); end - # source://mocha//lib/mocha/mockery.rb#120 + # source://mocha//lib/mocha/mockery.rb#124 def on_stubbing(object, method); end + # source://mocha//lib/mocha/mockery.rb#112 + def sequences; end + # source://mocha//lib/mocha/mockery.rb#108 def state_machines; end @@ -2374,7 +2407,7 @@ class Mocha::Mockery def stubba; end # source://mocha//lib/mocha/mockery.rb#94 - def teardown; end + def teardown(origin = T.unsafe(nil)); end # source://mocha//lib/mocha/mockery.rb#62 def unnamed_mock; end @@ -2384,27 +2417,27 @@ class Mocha::Mockery private - # source://mocha//lib/mocha/mockery.rb#161 + # source://mocha//lib/mocha/mockery.rb#165 def add_mock(mock); end - # source://mocha//lib/mocha/mockery.rb#166 + # source://mocha//lib/mocha/mockery.rb#170 def add_state_machine(state_machine); end # @raise [StubbingError] # - # source://mocha//lib/mocha/mockery.rb#140 + # source://mocha//lib/mocha/mockery.rb#144 def check(action, description, signature_proc, backtrace = T.unsafe(nil)); end - # source://mocha//lib/mocha/mockery.rb#149 + # source://mocha//lib/mocha/mockery.rb#153 def expectations; end - # source://mocha//lib/mocha/mockery.rb#171 + # source://mocha//lib/mocha/mockery.rb#175 def reset; end - # source://mocha//lib/mocha/mockery.rb#157 + # source://mocha//lib/mocha/mockery.rb#161 def satisfied_expectations; end - # source://mocha//lib/mocha/mockery.rb#153 + # source://mocha//lib/mocha/mockery.rb#157 def unsatisfied_expectations; end class << self @@ -2415,7 +2448,7 @@ class Mocha::Mockery def setup; end # source://mocha//lib/mocha/mockery.rb#51 - def teardown; end + def teardown(origin = T.unsafe(nil)); end # source://mocha//lib/mocha/mockery.rb#47 def verify(*args); end @@ -2477,7 +2510,7 @@ module Mocha::ObjectMethods # assert_equal true, product.save # @example Setting up multiple expectations on a non-mock object. # product = Product.new - # product.expects(:valid? => true, :save => true) + # product.expects(valid?: true, save: true) # # # exactly equivalent to # @@ -2528,7 +2561,7 @@ module Mocha::ObjectMethods # assert_equal true, product.save # @example Setting up multiple stubbed methods on a non-mock object. # product = Product.new - # product.stubs(:valid? => true, :save => true) + # product.stubs(valid?: true, save: true) # # # exactly equivalent to # @@ -2840,7 +2873,7 @@ module Mocha::ParameterMatchers # @example Actual parameter includes item which matches nested matcher. # object = mock() # object.expects(:method_1).with(includes(has_key(:key))) - # object.method_1(['foo', 'bar', {:key => 'baz'}]) + # object.method_1(['foo', 'bar', {key: 'baz'}]) # # no error raised # @example Actual parameter does not include item matching nested matcher. # object.method_1(['foo', 'bar', {:other_key => 'baz'}]) @@ -2856,10 +2889,10 @@ module Mocha::ParameterMatchers # @example Actual parameter is a Hash including the given key. # object = mock() # object.expects(:method_1).with(includes(:bar)) - # object.method_1({:foo => 1, :bar => 2}) + # object.method_1({foo: 1, bar: 2}) # # no error raised # @example Actual parameter is a Hash without the given key. - # object.method_1({:foo => 1, :baz => 2}) + # object.method_1({foo: 1, baz: 2}) # # error raised, because hash does not include key 'bar' # @example Actual parameter is a Hash with a key matching the given matcher. # object = mock() @@ -2985,8 +3018,6 @@ module Mocha::ParameterMatchers # source://mocha//lib/mocha/parameter_matchers/regexp_matches.rb#24 def regexp_matches(regexp); end - # Matches any object that responds to +message+ with +result+. To put it another way, it tests the quack, not the duck. - # # @example Actual parameter responds with "FOO" when :upcase is invoked. # object = mock() # object.expects(:method_1).with(responds_with(:upcase, "FOO")) @@ -2997,13 +3028,18 @@ module Mocha::ParameterMatchers # object.expects(:method_1).with(responds_with(:upcase, "BAR")) # object.method_1("foo") # # error raised, because "foo".upcase != "BAR" - # @param message [Symbol] method to invoke. - # @param result [Object] expected result of sending +message+. + # @example Actual parameter responds with "FOO" when :upcase is invoked and "oof" when :reverse is invoked. + # object = mock() + # object.expects(:method_1).with(responds_with(upcase: "FOO", reverse: "oof")) + # object.method_1("foo") + # # no error raised, because "foo".upcase == "FOO" and "foo".reverse == "oof" + # @overload responds_with + # @overload responds_with # @return [RespondsWith] parameter matcher. # @see Expectation#with # - # source://mocha//lib/mocha/parameter_matchers/responds_with.rb#25 - def responds_with(message, result); end + # source://mocha//lib/mocha/parameter_matchers/responds_with.rb#37 + def responds_with(*options); end # Matches any YAML that represents the specified +object+ # @@ -3121,12 +3157,12 @@ class Mocha::ParameterMatchers::Base # @example Alternative ways to combine matchers with a logical AND. # object = mock() # object.expects(:run).with(all_of(has_key(:foo), has_key(:bar))) - # object.run(:foo => 'foovalue', :bar => 'barvalue') + # object.run(foo: 'foovalue', bar: 'barvalue') # # # is exactly equivalent to # # object.expects(:run).with(has_key(:foo) & has_key(:bar)) - # object.run(:foo => 'foovalue', :bar => 'barvalue) + # object.run(foo: 'foovalue', bar: 'barvalue) # @param other [Base] parameter matcher. # @return [AllOf] parameter matcher. # @see Expectation#with @@ -3148,12 +3184,12 @@ class Mocha::ParameterMatchers::Base # @example Alternative ways to combine matchers with a logical OR. # object = mock() # object.expects(:run).with(any_of(has_key(:foo), has_key(:bar))) - # object.run(:foo => 'foovalue') + # object.run(foo: 'foovalue') # # # is exactly equivalent to # # object.expects(:run).with(has_key(:foo) | has_key(:bar)) - # object.run(:foo => 'foovalue') + # object.run(foo: 'foovalue') # @example Using an explicit {Equals} matcher in combination with {#|}. # object.expects(:run).with(equals(1) | equals(2)) # object.run(1) # passes @@ -3537,23 +3573,23 @@ end # Parameter matcher which matches if actual parameter returns expected result when specified method is invoked. # -# source://mocha//lib/mocha/parameter_matchers/responds_with.rb#30 +# source://mocha//lib/mocha/parameter_matchers/responds_with.rb#57 class Mocha::ParameterMatchers::RespondsWith < ::Mocha::ParameterMatchers::Base # @private # @return [RespondsWith] a new instance of RespondsWith # - # source://mocha//lib/mocha/parameter_matchers/responds_with.rb#32 + # source://mocha//lib/mocha/parameter_matchers/responds_with.rb#59 def initialize(message, result); end # @private # @return [Boolean] # - # source://mocha//lib/mocha/parameter_matchers/responds_with.rb#38 + # source://mocha//lib/mocha/parameter_matchers/responds_with.rb#65 def matches?(available_parameters); end # @private # - # source://mocha//lib/mocha/parameter_matchers/responds_with.rb#44 + # source://mocha//lib/mocha/parameter_matchers/responds_with.rb#71 def mocha_inspect; end end diff --git a/sorbet/rbi/gems/prism@0.24.0.rbi b/sorbet/rbi/gems/prism@0.26.0.rbi similarity index 57% rename from sorbet/rbi/gems/prism@0.24.0.rbi rename to sorbet/rbi/gems/prism@0.26.0.rbi index 07688d12c..05521696f 100644 --- a/sorbet/rbi/gems/prism@0.24.0.rbi +++ b/sorbet/rbi/gems/prism@0.26.0.rbi @@ -4,12 +4,33 @@ # This is an autogenerated file for types exported from the `prism` gem. # Please instead update this file by running `bin/tapioca gem prism`. +# typed: strict + +# =begin +# This file is generated by the templates/template.rb script and should not be +# modified manually. See templates/rbi/prism/node.rbi.erb +# if you are looking to modify the template +# =end # =begin # This file is generated by the templates/template.rb script and should not be -# modified manually. See templates/rbi/prism.rbi.erb +# modified manually. See templates/rbi/prism/visitor.rbi.erb # if you are looking to modify the template # =end +# We keep these shims in here because our client libraries might not have +# ast/parser in their bundle. +module AST; end + +class AST::Node; end + +# We keep these shims in here because our client libraries might not have parser +# in their bundle. +module Parser; end + +module Parser::AST; end +class Parser::AST::Node < AST::Node; end +class Parser::Base; end + # The Prism Ruby parser. # # "Parsing Ruby is suddenly manageable!" @@ -36,7 +57,13 @@ module Prism # # For supported options, see Prism::parse. # - # source://prism//lib/prism.rb#46 + # source://prism//lib/prism.rb#47 + sig do + params( + source: String, + options: T::Hash[Symbol, T.untyped] + ).returns(Prism::ParseResult[T::Array[T.untyped]]) + end def lex_compat(source, **options); end # Mirror the Prism.lex_file API by using the serialization API. @@ -49,7 +76,8 @@ module Prism # returns the same tokens. Raises SyntaxError if the syntax in source is # invalid. # - # source://prism//lib/prism.rb#56 + # source://prism//lib/prism.rb#57 + sig { params(source: String).returns(T::Array[T.untyped]) } def lex_ripper(source); end # :call-seq: @@ -57,7 +85,8 @@ module Prism # # Load the serialized AST using the source as a reference into a tree. # - # source://prism//lib/prism.rb#64 + # source://prism//lib/prism.rb#65 + sig { params(source: String, serialized: String).returns(Prism::ParseResult[Prism::ProgramNode]) } def load(source, serialized); end # Mirror the Prism.parse API by using the serialization API. @@ -66,19 +95,14 @@ module Prism # Mirror the Prism.parse_comments API by using the serialization API. def parse_comments(*_arg0); end - # :call-seq: - # Prism::parse_failure?(source, **options) -> bool - # - # Returns true if the source parses with errors. + # Mirror the Prism.parse_failure? API by using the serialization API. # # @return [Boolean] - # - # source://prism//lib/prism.rb#72 - def parse_failure?(source, **options); end + def parse_failure?(*_arg0); end # Mirror the Prism.parse_file API by using the serialization API. This uses - # native strings instead of Ruby strings because it allows us to use mmap when - # it is available. + # native strings instead of Ruby strings because it allows us to use mmap + # when it is available. def parse_file(*_arg0); end # Mirror the Prism.parse_file_comments API by using the serialization @@ -86,15 +110,10 @@ module Prism # to use mmap when it is available. def parse_file_comments(*_arg0); end - # :call-seq: - # Prism::parse_file_failure?(filepath, **options) -> bool - # - # Returns true if the file at filepath parses with errors. + # Mirror the Prism.parse_file_failure? API by using the serialization API. # # @return [Boolean] - # - # source://prism//lib/prism.rb#80 - def parse_file_failure?(filepath, **options); end + def parse_file_failure?(*_arg0); end # Mirror the Prism.parse_file_success? API by using the serialization API. # @@ -107,6 +126,9 @@ module Prism # Mirror the Prism.parse_lex_file API by using the serialization API. def parse_lex_file(*_arg0); end + # Mirror the Prism.parse_stream API by using the serialization API. + def parse_stream(*_arg0); end + # Mirror the Prism.parse_success? API by using the serialization API. # # @return [Boolean] @@ -119,86 +141,104 @@ end # alias $foo $bar # ^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#97 +# source://prism//lib/prism/node.rb#135 class Prism::AliasGlobalVariableNode < ::Prism::Node - # def initialize: (Node new_name, Node old_name, Location keyword_loc, Location location) -> void + # def initialize: (Prism::node new_name, Prism::node old_name, Location keyword_loc, Location location) -> void # # @return [AliasGlobalVariableNode] a new instance of AliasGlobalVariableNode # - # source://prism//lib/prism/node.rb#99 + # source://prism//lib/prism/node.rb#137 + sig do + params( + source: Prism::Source, + new_name: Prism::Node, + old_name: Prism::Node, + keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, new_name, old_name, keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#109 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#147 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#114 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#152 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#124 + # source://prism//lib/prism/node.rb#162 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#119 + # source://prism//lib/prism/node.rb#157 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> AliasGlobalVariableNode + # def copy: (?new_name: Prism::node, ?old_name: Prism::node, ?keyword_loc: Location, ?location: Location) -> AliasGlobalVariableNode # - # source://prism//lib/prism/node.rb#129 - sig { params(params: T.untyped).returns(Prism::AliasGlobalVariableNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#167 + sig do + params( + new_name: Prism::Node, + old_name: Prism::Node, + keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::AliasGlobalVariableNode) + end + def copy(new_name: T.unsafe(nil), old_name: T.unsafe(nil), keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#114 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#152 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { new_name: Node, old_name: Node, keyword_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { new_name: Prism::node, old_name: Prism::node, keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#143 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#175 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#166 + # source://prism//lib/prism/node.rb#199 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#161 + # source://prism//lib/prism/node.rb#194 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#154 + # source://prism//lib/prism/node.rb#186 sig { returns(Prism::Location) } def keyword_loc; end - # attr_reader new_name: Node + # attr_reader new_name: Prism::node # - # source://prism//lib/prism/node.rb#148 + # source://prism//lib/prism/node.rb#180 sig { returns(Prism::Node) } def new_name; end - # attr_reader old_name: Node + # attr_reader old_name: Prism::node # - # source://prism//lib/prism/node.rb#151 + # source://prism//lib/prism/node.rb#183 sig { returns(Prism::Node) } def old_name; end @@ -217,7 +257,8 @@ class Prism::AliasGlobalVariableNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#190 + # source://prism//lib/prism/node.rb#223 + sig { override.returns(Symbol) } def type; end class << self @@ -228,7 +269,7 @@ class Prism::AliasGlobalVariableNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#200 + # source://prism//lib/prism/node.rb#233 def type; end end end @@ -238,86 +279,104 @@ end # alias foo bar # ^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#209 +# source://prism//lib/prism/node.rb#242 class Prism::AliasMethodNode < ::Prism::Node - # def initialize: (Node new_name, Node old_name, Location keyword_loc, Location location) -> void + # def initialize: (Prism::node new_name, Prism::node old_name, Location keyword_loc, Location location) -> void # # @return [AliasMethodNode] a new instance of AliasMethodNode # - # source://prism//lib/prism/node.rb#211 + # source://prism//lib/prism/node.rb#244 + sig do + params( + source: Prism::Source, + new_name: Prism::Node, + old_name: Prism::Node, + keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, new_name, old_name, keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#221 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#254 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#226 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#259 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#236 + # source://prism//lib/prism/node.rb#269 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#231 + # source://prism//lib/prism/node.rb#264 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> AliasMethodNode + # def copy: (?new_name: Prism::node, ?old_name: Prism::node, ?keyword_loc: Location, ?location: Location) -> AliasMethodNode # - # source://prism//lib/prism/node.rb#241 - sig { params(params: T.untyped).returns(Prism::AliasMethodNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#274 + sig do + params( + new_name: Prism::Node, + old_name: Prism::Node, + keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::AliasMethodNode) + end + def copy(new_name: T.unsafe(nil), old_name: T.unsafe(nil), keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#226 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#259 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { new_name: Node, old_name: Node, keyword_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { new_name: Prism::node, old_name: Prism::node, keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#255 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#282 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#278 + # source://prism//lib/prism/node.rb#306 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#273 + # source://prism//lib/prism/node.rb#301 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#266 + # source://prism//lib/prism/node.rb#293 sig { returns(Prism::Location) } def keyword_loc; end - # attr_reader new_name: Node + # attr_reader new_name: Prism::node # - # source://prism//lib/prism/node.rb#260 + # source://prism//lib/prism/node.rb#287 sig { returns(Prism::Node) } def new_name; end - # attr_reader old_name: Node + # attr_reader old_name: Prism::node # - # source://prism//lib/prism/node.rb#263 + # source://prism//lib/prism/node.rb#290 sig { returns(Prism::Node) } def old_name; end @@ -336,7 +395,8 @@ class Prism::AliasMethodNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#302 + # source://prism//lib/prism/node.rb#330 + sig { override.returns(Symbol) } def type; end class << self @@ -347,7 +407,7 @@ class Prism::AliasMethodNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#312 + # source://prism//lib/prism/node.rb#340 def type; end end end @@ -357,86 +417,104 @@ end # foo => bar | baz # ^^^^^^^^^ # -# source://prism//lib/prism/node.rb#321 +# source://prism//lib/prism/node.rb#349 class Prism::AlternationPatternNode < ::Prism::Node - # def initialize: (Node left, Node right, Location operator_loc, Location location) -> void + # def initialize: (Prism::node left, Prism::node right, Location operator_loc, Location location) -> void # # @return [AlternationPatternNode] a new instance of AlternationPatternNode # - # source://prism//lib/prism/node.rb#323 + # source://prism//lib/prism/node.rb#351 + sig do + params( + source: Prism::Source, + left: Prism::Node, + right: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, left, right, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#333 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#361 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#338 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#366 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#348 + # source://prism//lib/prism/node.rb#376 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#343 + # source://prism//lib/prism/node.rb#371 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> AlternationPatternNode + # def copy: (?left: Prism::node, ?right: Prism::node, ?operator_loc: Location, ?location: Location) -> AlternationPatternNode # - # source://prism//lib/prism/node.rb#353 - sig { params(params: T.untyped).returns(Prism::AlternationPatternNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#381 + sig do + params( + left: Prism::Node, + right: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::AlternationPatternNode) + end + def copy(left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#338 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#366 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { left: Node, right: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { left: Prism::node, right: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#367 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#389 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#390 + # source://prism//lib/prism/node.rb#413 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader left: Node + # attr_reader left: Prism::node # - # source://prism//lib/prism/node.rb#372 + # source://prism//lib/prism/node.rb#394 sig { returns(Prism::Node) } def left; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#385 + # source://prism//lib/prism/node.rb#408 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#378 + # source://prism//lib/prism/node.rb#400 sig { returns(Prism::Location) } def operator_loc; end - # attr_reader right: Node + # attr_reader right: Prism::node # - # source://prism//lib/prism/node.rb#375 + # source://prism//lib/prism/node.rb#397 sig { returns(Prism::Node) } def right; end @@ -455,7 +533,8 @@ class Prism::AlternationPatternNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#414 + # source://prism//lib/prism/node.rb#437 + sig { override.returns(Symbol) } def type; end class << self @@ -466,7 +545,7 @@ class Prism::AlternationPatternNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#424 + # source://prism//lib/prism/node.rb#447 def type; end end end @@ -476,63 +555,81 @@ end # left and right # ^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#433 +# source://prism//lib/prism/node.rb#456 class Prism::AndNode < ::Prism::Node - # def initialize: (Node left, Node right, Location operator_loc, Location location) -> void + # def initialize: (Prism::node left, Prism::node right, Location operator_loc, Location location) -> void # # @return [AndNode] a new instance of AndNode # - # source://prism//lib/prism/node.rb#435 + # source://prism//lib/prism/node.rb#458 + sig do + params( + source: Prism::Source, + left: Prism::Node, + right: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, left, right, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#445 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#468 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#450 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#473 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#460 + # source://prism//lib/prism/node.rb#483 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#455 + # source://prism//lib/prism/node.rb#478 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> AndNode + # def copy: (?left: Prism::node, ?right: Prism::node, ?operator_loc: Location, ?location: Location) -> AndNode # - # source://prism//lib/prism/node.rb#465 - sig { params(params: T.untyped).returns(Prism::AndNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#488 + sig do + params( + left: Prism::Node, + right: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::AndNode) + end + def copy(left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#450 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#473 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { left: Node, right: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { left: Prism::node, right: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#479 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#496 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#517 + # source://prism//lib/prism/node.rb#535 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Represents the left side of the expression. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression). @@ -543,13 +640,13 @@ class Prism::AndNode < ::Prism::Node # 1 && 2 # ^ # - # source://prism//lib/prism/node.rb#490 + # source://prism//lib/prism/node.rb#507 sig { returns(Prism::Node) } def left; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#512 + # source://prism//lib/prism/node.rb#530 sig { returns(String) } def operator; end @@ -558,7 +655,7 @@ class Prism::AndNode < ::Prism::Node # left and right # ^^^ # - # source://prism//lib/prism/node.rb#505 + # source://prism//lib/prism/node.rb#522 sig { returns(Prism::Location) } def operator_loc; end @@ -570,7 +667,7 @@ class Prism::AndNode < ::Prism::Node # 1 and 2 # ^ # - # source://prism//lib/prism/node.rb#499 + # source://prism//lib/prism/node.rb#516 sig { returns(Prism::Node) } def right; end @@ -589,7 +686,8 @@ class Prism::AndNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#541 + # source://prism//lib/prism/node.rb#559 + sig { override.returns(Symbol) } def type; end class << self @@ -600,7 +698,7 @@ class Prism::AndNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#551 + # source://prism//lib/prism/node.rb#569 def type; end end end @@ -610,77 +708,93 @@ end # return foo, bar, baz # ^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#560 +# source://prism//lib/prism/node.rb#578 class Prism::ArgumentsNode < ::Prism::Node - # def initialize: (Integer flags, Array[Node] arguments, Location location) -> void + # def initialize: (Integer flags, Array[Prism::node] arguments, Location location) -> void # # @return [ArgumentsNode] a new instance of ArgumentsNode # - # source://prism//lib/prism/node.rb#562 + # source://prism//lib/prism/node.rb#580 + sig do + params( + source: Prism::Source, + flags: Integer, + arguments: T::Array[Prism::Node], + location: Prism::Location + ).void + end def initialize(source, flags, arguments, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#571 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#589 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader arguments: Array[Node] + # attr_reader arguments: Array[Prism::node] # - # source://prism//lib/prism/node.rb#613 + # source://prism//lib/prism/node.rb#626 sig { returns(T::Array[Prism::Node]) } def arguments; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#576 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#594 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#586 + # source://prism//lib/prism/node.rb#604 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#581 + # source://prism//lib/prism/node.rb#599 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end # def contains_keyword_splat?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#617 + # source://prism//lib/prism/node.rb#630 sig { returns(T::Boolean) } def contains_keyword_splat?; end - # def copy: (**params) -> ArgumentsNode + # def copy: (?flags: Integer, ?arguments: Array[Prism::node], ?location: Location) -> ArgumentsNode # - # source://prism//lib/prism/node.rb#591 - sig { params(params: T.untyped).returns(Prism::ArgumentsNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#609 + sig do + params( + flags: Integer, + arguments: T::Array[Prism::Node], + location: Prism::Location + ).returns(Prism::ArgumentsNode) + end + def copy(flags: T.unsafe(nil), arguments: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#576 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#594 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, arguments: Array[Node], location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, arguments: Array[Prism::node], location: Location } # - # source://prism//lib/prism/node.rb#604 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#617 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#622 + # source://prism//lib/prism/node.rb#635 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -698,14 +812,15 @@ class Prism::ArgumentsNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#644 + # source://prism//lib/prism/node.rb#657 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#609 + # source://prism//lib/prism/node.rb#622 sig { returns(Integer) } def flags; end @@ -717,19 +832,19 @@ class Prism::ArgumentsNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#654 + # source://prism//lib/prism/node.rb#667 def type; end end end # Flags for arguments nodes. # -# source://prism//lib/prism/node.rb#19241 +# source://prism//lib/prism/node.rb#18830 module Prism::ArgumentsNodeFlags; end # if arguments contain keyword splat # -# source://prism//lib/prism/node.rb#19243 +# source://prism//lib/prism/node.rb#18832 Prism::ArgumentsNodeFlags::CONTAINS_KEYWORD_SPLAT = T.let(T.unsafe(nil), Integer) # Represents an array literal. This can be a regular array using brackets or a special array using % like %w or %i. @@ -737,100 +852,120 @@ Prism::ArgumentsNodeFlags::CONTAINS_KEYWORD_SPLAT = T.let(T.unsafe(nil), Integer # [1, 2, 3] # ^^^^^^^^^ # -# source://prism//lib/prism/node.rb#663 +# source://prism//lib/prism/node.rb#676 class Prism::ArrayNode < ::Prism::Node - # def initialize: (Integer flags, Array[Node] elements, Location? opening_loc, Location? closing_loc, Location location) -> void + # def initialize: (Integer flags, Array[Prism::node] elements, Location? opening_loc, Location? closing_loc, Location location) -> void # # @return [ArrayNode] a new instance of ArrayNode # - # source://prism//lib/prism/node.rb#665 + # source://prism//lib/prism/node.rb#678 + sig do + params( + source: Prism::Source, + flags: Integer, + elements: T::Array[Prism::Node], + opening_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, flags, elements, opening_loc, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#676 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#689 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#681 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#694 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#758 + # source://prism//lib/prism/node.rb#766 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#735 + # source://prism//lib/prism/node.rb#742 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#691 + # source://prism//lib/prism/node.rb#704 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#686 + # source://prism//lib/prism/node.rb#699 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end # def contains_splat?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#748 + # source://prism//lib/prism/node.rb#756 sig { returns(T::Boolean) } def contains_splat?; end - # def copy: (**params) -> ArrayNode + # def copy: (?flags: Integer, ?elements: Array[Prism::node], ?opening_loc: Location?, ?closing_loc: Location?, ?location: Location) -> ArrayNode # - # source://prism//lib/prism/node.rb#696 - sig { params(params: T.untyped).returns(Prism::ArrayNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#709 + sig do + params( + flags: Integer, + elements: T::Array[Prism::Node], + opening_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::ArrayNode) + end + def copy(flags: T.unsafe(nil), elements: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#681 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#694 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, elements: Array[Node], opening_loc: Location?, closing_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, elements: Array[Prism::node], opening_loc: Location?, closing_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#711 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#717 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # attr_reader elements: Array[Node] + # attr_reader elements: Array[Prism::node] # - # source://prism//lib/prism/node.rb#720 + # source://prism//lib/prism/node.rb#726 sig { returns(T::Array[Prism::Node]) } def elements; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#763 + # source://prism//lib/prism/node.rb#771 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String? # - # source://prism//lib/prism/node.rb#753 + # source://prism//lib/prism/node.rb#761 sig { returns(T.nilable(String)) } def opening; end # attr_reader opening_loc: Location? # - # source://prism//lib/prism/node.rb#723 + # source://prism//lib/prism/node.rb#729 sig { returns(T.nilable(Prism::Location)) } def opening_loc; end @@ -849,14 +984,15 @@ class Prism::ArrayNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#787 + # source://prism//lib/prism/node.rb#795 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#716 + # source://prism//lib/prism/node.rb#722 sig { returns(Integer) } def flags; end @@ -868,19 +1004,19 @@ class Prism::ArrayNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#797 + # source://prism//lib/prism/node.rb#805 def type; end end end # Flags for array nodes. # -# source://prism//lib/prism/node.rb#19247 +# source://prism//lib/prism/node.rb#18836 module Prism::ArrayNodeFlags; end # if array contains splat nodes # -# source://prism//lib/prism/node.rb#19249 +# source://prism//lib/prism/node.rb#18838 Prism::ArrayNodeFlags::CONTAINS_SPLAT = T.let(T.unsafe(nil), Integer) # Represents an array pattern in pattern matching. @@ -900,30 +1036,42 @@ Prism::ArrayNodeFlags::CONTAINS_SPLAT = T.let(T.unsafe(nil), Integer) # foo in Bar[1, 2, 3] # ^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#818 +# source://prism//lib/prism/node.rb#826 class Prism::ArrayPatternNode < ::Prism::Node - # def initialize: (Node? constant, Array[Node] requireds, Node? rest, Array[Node] posts, Location? opening_loc, Location? closing_loc, Location location) -> void + # def initialize: (Prism::node? constant, Array[Prism::node] requireds, Prism::node? rest, Array[Prism::node] posts, Location? opening_loc, Location? closing_loc, Location location) -> void # # @return [ArrayPatternNode] a new instance of ArrayPatternNode # - # source://prism//lib/prism/node.rb#820 + # source://prism//lib/prism/node.rb#828 + sig do + params( + source: Prism::Source, + constant: T.nilable(Prism::Node), + requireds: T::Array[Prism::Node], + rest: T.nilable(Prism::Node), + posts: T::Array[Prism::Node], + opening_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, constant, requireds, rest, posts, opening_loc, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#833 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#841 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#838 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#846 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#922 + # source://prism//lib/prism/node.rb#923 sig { returns(T.nilable(String)) } def closing; end @@ -935,75 +1083,87 @@ class Prism::ArrayPatternNode < ::Prism::Node # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#853 + # source://prism//lib/prism/node.rb#861 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#843 + # source://prism//lib/prism/node.rb#851 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # attr_reader constant: Node? + # attr_reader constant: Prism::node? # - # source://prism//lib/prism/node.rb#880 + # source://prism//lib/prism/node.rb#879 sig { returns(T.nilable(Prism::Node)) } def constant; end - # def copy: (**params) -> ArrayPatternNode + # def copy: (?constant: Prism::node?, ?requireds: Array[Prism::node], ?rest: Prism::node?, ?posts: Array[Prism::node], ?opening_loc: Location?, ?closing_loc: Location?, ?location: Location) -> ArrayPatternNode # - # source://prism//lib/prism/node.rb#858 - sig { params(params: T.untyped).returns(Prism::ArrayPatternNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#866 + sig do + params( + constant: T.nilable(Prism::Node), + requireds: T::Array[Prism::Node], + rest: T.nilable(Prism::Node), + posts: T::Array[Prism::Node], + opening_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::ArrayPatternNode) + end + def copy(constant: T.unsafe(nil), requireds: T.unsafe(nil), rest: T.unsafe(nil), posts: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#838 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#846 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { constant: Node?, requireds: Array[Node], rest: Node?, posts: Array[Node], opening_loc: Location?, closing_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { constant: Prism::node?, requireds: Array[Prism::node], rest: Prism::node?, posts: Array[Prism::node], opening_loc: Location?, closing_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#875 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#874 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#927 + # source://prism//lib/prism/node.rb#928 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String? # - # source://prism//lib/prism/node.rb#917 + # source://prism//lib/prism/node.rb#918 sig { returns(T.nilable(String)) } def opening; end # attr_reader opening_loc: Location? # - # source://prism//lib/prism/node.rb#892 + # source://prism//lib/prism/node.rb#891 sig { returns(T.nilable(Prism::Location)) } def opening_loc; end - # attr_reader posts: Array[Node] + # attr_reader posts: Array[Prism::node] # - # source://prism//lib/prism/node.rb#889 + # source://prism//lib/prism/node.rb#888 sig { returns(T::Array[Prism::Node]) } def posts; end - # attr_reader requireds: Array[Node] + # attr_reader requireds: Array[Prism::node] # - # source://prism//lib/prism/node.rb#883 + # source://prism//lib/prism/node.rb#882 sig { returns(T::Array[Prism::Node]) } def requireds; end - # attr_reader rest: Node? + # attr_reader rest: Prism::node? # - # source://prism//lib/prism/node.rb#886 + # source://prism//lib/prism/node.rb#885 sig { returns(T.nilable(Prism::Node)) } def rest; end @@ -1022,7 +1182,8 @@ class Prism::ArrayPatternNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#962 + # source://prism//lib/prism/node.rb#963 + sig { override.returns(Symbol) } def type; end class << self @@ -1033,7 +1194,7 @@ class Prism::ArrayPatternNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#972 + # source://prism//lib/prism/node.rb#973 def type; end end end @@ -1043,63 +1204,81 @@ end # { a => b } # ^^^^^^ # -# source://prism//lib/prism/node.rb#981 +# source://prism//lib/prism/node.rb#982 class Prism::AssocNode < ::Prism::Node - # def initialize: (Node key, Node value, Location? operator_loc, Location location) -> void + # def initialize: (Prism::node key, Prism::node value, Location? operator_loc, Location location) -> void # # @return [AssocNode] a new instance of AssocNode # - # source://prism//lib/prism/node.rb#983 + # source://prism//lib/prism/node.rb#984 + sig do + params( + source: Prism::Source, + key: Prism::Node, + value: Prism::Node, + operator_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, key, value, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#993 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#994 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#998 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#999 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#1008 + # source://prism//lib/prism/node.rb#1009 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#1003 + # source://prism//lib/prism/node.rb#1004 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> AssocNode + # def copy: (?key: Prism::node, ?value: Prism::node, ?operator_loc: Location?, ?location: Location) -> AssocNode # - # source://prism//lib/prism/node.rb#1013 - sig { params(params: T.untyped).returns(Prism::AssocNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#1014 + sig do + params( + key: Prism::Node, + value: Prism::Node, + operator_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::AssocNode) + end + def copy(key: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#998 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#999 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { key: Node, value: Node, operator_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { key: Prism::node, value: Prism::node, operator_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#1027 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#1022 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#1074 + # source://prism//lib/prism/node.rb#1070 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # The key of the association. This can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression). @@ -1113,13 +1292,13 @@ class Prism::AssocNode < ::Prism::Node # { def a; end => 1 } # ^^^^^^^^^^ # - # source://prism//lib/prism/node.rb#1041 + # source://prism//lib/prism/node.rb#1036 sig { returns(Prism::Node) } def key; end # def operator: () -> String? # - # source://prism//lib/prism/node.rb#1069 + # source://prism//lib/prism/node.rb#1065 sig { returns(T.nilable(String)) } def operator; end @@ -1128,7 +1307,7 @@ class Prism::AssocNode < ::Prism::Node # { foo => bar } # ^^ # - # source://prism//lib/prism/node.rb#1056 + # source://prism//lib/prism/node.rb#1051 sig { returns(T.nilable(Prism::Location)) } def operator_loc; end @@ -1147,7 +1326,8 @@ class Prism::AssocNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#1098 + # source://prism//lib/prism/node.rb#1094 + sig { override.returns(Symbol) } def type; end # The value of the association, if present. This can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression). @@ -1158,7 +1338,7 @@ class Prism::AssocNode < ::Prism::Node # { x: 1 } # ^ # - # source://prism//lib/prism/node.rb#1050 + # source://prism//lib/prism/node.rb#1045 sig { returns(Prism::Node) } def value; end @@ -1170,7 +1350,7 @@ class Prism::AssocNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#1108 + # source://prism//lib/prism/node.rb#1104 def type; end end end @@ -1180,68 +1360,84 @@ end # { **foo } # ^^^^^ # -# source://prism//lib/prism/node.rb#1117 +# source://prism//lib/prism/node.rb#1113 class Prism::AssocSplatNode < ::Prism::Node - # def initialize: (Node? value, Location operator_loc, Location location) -> void + # def initialize: (Prism::node? value, Location operator_loc, Location location) -> void # # @return [AssocSplatNode] a new instance of AssocSplatNode # - # source://prism//lib/prism/node.rb#1119 + # source://prism//lib/prism/node.rb#1115 + sig do + params( + source: Prism::Source, + value: T.nilable(Prism::Node), + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, value, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#1128 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#1124 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1133 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1129 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#1145 + # source://prism//lib/prism/node.rb#1141 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#1138 + # source://prism//lib/prism/node.rb#1134 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> AssocSplatNode + # def copy: (?value: Prism::node?, ?operator_loc: Location, ?location: Location) -> AssocSplatNode # - # source://prism//lib/prism/node.rb#1150 - sig { params(params: T.untyped).returns(Prism::AssocSplatNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#1146 + sig do + params( + value: T.nilable(Prism::Node), + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::AssocSplatNode) + end + def copy(value: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1133 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1129 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { value: Node?, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { value: Prism::node?, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#1163 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#1154 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#1189 + # source://prism//lib/prism/node.rb#1181 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#1184 + # source://prism//lib/prism/node.rb#1176 sig { returns(String) } def operator; end @@ -1250,7 +1446,7 @@ class Prism::AssocSplatNode < ::Prism::Node # { **x } # ^^ # - # source://prism//lib/prism/node.rb#1177 + # source://prism//lib/prism/node.rb#1168 sig { returns(Prism::Location) } def operator_loc; end @@ -1269,7 +1465,8 @@ class Prism::AssocSplatNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#1215 + # source://prism//lib/prism/node.rb#1207 + sig { override.returns(Symbol) } def type; end # The value to be splatted, if present. Will be missing when keyword rest argument forwarding is used. @@ -1277,7 +1474,7 @@ class Prism::AssocSplatNode < ::Prism::Node # { **foo } # ^^^ # - # source://prism//lib/prism/node.rb#1171 + # source://prism//lib/prism/node.rb#1162 sig { returns(T.nilable(Prism::Node)) } def value; end @@ -1289,11 +1486,14 @@ class Prism::AssocSplatNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#1225 + # source://prism//lib/prism/node.rb#1217 def type; end end end +# The FFI backend is used on other Ruby implementations. +# +# source://prism//lib/prism.rb#84 Prism::BACKEND = T.let(T.unsafe(nil), Symbol) # Represents reading a reference to a field in the previous match. @@ -1301,63 +1501,66 @@ Prism::BACKEND = T.let(T.unsafe(nil), Symbol) # $' # ^^ # -# source://prism//lib/prism/node.rb#1234 +# source://prism//lib/prism/node.rb#1226 class Prism::BackReferenceReadNode < ::Prism::Node # def initialize: (Symbol name, Location location) -> void # # @return [BackReferenceReadNode] a new instance of BackReferenceReadNode # - # source://prism//lib/prism/node.rb#1236 + # source://prism//lib/prism/node.rb#1228 + sig { params(source: Prism::Source, name: Symbol, location: Prism::Location).void } def initialize(source, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#1244 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#1236 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1249 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1241 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#1259 + # source://prism//lib/prism/node.rb#1251 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#1254 + # source://prism//lib/prism/node.rb#1246 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> BackReferenceReadNode + # def copy: (?name: Symbol, ?location: Location) -> BackReferenceReadNode # - # source://prism//lib/prism/node.rb#1264 - sig { params(params: T.untyped).returns(Prism::BackReferenceReadNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#1256 + sig { params(name: Symbol, location: Prism::Location).returns(Prism::BackReferenceReadNode) } + def copy(name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1249 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1241 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#1276 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#1264 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#1289 + # source://prism//lib/prism/node.rb#1277 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # The name of the back-reference variable, including the leading `$`. @@ -1366,7 +1569,7 @@ class Prism::BackReferenceReadNode < ::Prism::Node # # $+ # name `:$+` # - # source://prism//lib/prism/node.rb#1285 + # source://prism//lib/prism/node.rb#1273 sig { returns(Symbol) } def name; end @@ -1385,7 +1588,8 @@ class Prism::BackReferenceReadNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#1309 + # source://prism//lib/prism/node.rb#1297 + sig { override.returns(Symbol) } def type; end class << self @@ -1396,7 +1600,7 @@ class Prism::BackReferenceReadNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#1319 + # source://prism//lib/prism/node.rb#1307 def type; end end end @@ -1406,24 +1610,24 @@ end # implement each one that they need. For a default implementation that # continues walking the tree, see the Visitor class. # -# source://prism//lib/prism/visitor.rb#13 +# source://prism//lib/prism/visitor.rb#14 class Prism::BasicVisitor # Calls `accept` on the given node if it is not `nil`, which in turn should # call back into this visitor by calling the appropriate `visit_*` method. # - # source://prism//lib/prism/visitor.rb#16 + # source://prism//lib/prism/visitor.rb#17 sig { params(node: T.nilable(Prism::Node)).void } def visit(node); end # Visits each node in `nodes` by calling `accept` on each one. # - # source://prism//lib/prism/visitor.rb#21 + # source://prism//lib/prism/visitor.rb#23 sig { params(nodes: T::Array[T.nilable(Prism::Node)]).void } def visit_all(nodes); end # Visits the child nodes of `node` by calling `accept` on each one. # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::Node).void } def visit_child_nodes(node); end end @@ -1435,113 +1639,137 @@ end # end # ^^^^^ # -# source://prism//lib/prism/node.rb#1330 +# source://prism//lib/prism/node.rb#1318 class Prism::BeginNode < ::Prism::Node # def initialize: (Location? begin_keyword_loc, StatementsNode? statements, RescueNode? rescue_clause, ElseNode? else_clause, EnsureNode? ensure_clause, Location? end_keyword_loc, Location location) -> void # # @return [BeginNode] a new instance of BeginNode # - # source://prism//lib/prism/node.rb#1332 + # source://prism//lib/prism/node.rb#1320 + sig do + params( + source: Prism::Source, + begin_keyword_loc: T.nilable(Prism::Location), + statements: T.nilable(Prism::StatementsNode), + rescue_clause: T.nilable(Prism::RescueNode), + else_clause: T.nilable(Prism::ElseNode), + ensure_clause: T.nilable(Prism::EnsureNode), + end_keyword_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, begin_keyword_loc, statements, rescue_clause, else_clause, ensure_clause, end_keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#1345 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#1333 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def begin_keyword: () -> String? # - # source://prism//lib/prism/node.rb#1433 + # source://prism//lib/prism/node.rb#1414 sig { returns(T.nilable(String)) } def begin_keyword; end # attr_reader begin_keyword_loc: Location? # - # source://prism//lib/prism/node.rb#1396 + # source://prism//lib/prism/node.rb#1375 sig { returns(T.nilable(Prism::Location)) } def begin_keyword_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1354 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1342 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#1369 + # source://prism//lib/prism/node.rb#1357 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#1359 + # source://prism//lib/prism/node.rb#1347 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> BeginNode + # def copy: (?begin_keyword_loc: Location?, ?statements: StatementsNode?, ?rescue_clause: RescueNode?, ?else_clause: ElseNode?, ?ensure_clause: EnsureNode?, ?end_keyword_loc: Location?, ?location: Location) -> BeginNode # - # source://prism//lib/prism/node.rb#1374 - sig { params(params: T.untyped).returns(Prism::BeginNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#1362 + sig do + params( + begin_keyword_loc: T.nilable(Prism::Location), + statements: T.nilable(Prism::StatementsNode), + rescue_clause: T.nilable(Prism::RescueNode), + else_clause: T.nilable(Prism::ElseNode), + ensure_clause: T.nilable(Prism::EnsureNode), + end_keyword_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::BeginNode) + end + def copy(begin_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), rescue_clause: T.unsafe(nil), else_clause: T.unsafe(nil), ensure_clause: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1354 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1342 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { begin_keyword_loc: Location?, statements: StatementsNode?, rescue_clause: RescueNode?, else_clause: ElseNode?, ensure_clause: EnsureNode?, end_keyword_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#1391 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#1370 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # attr_reader else_clause: ElseNode? # - # source://prism//lib/prism/node.rb#1414 + # source://prism//lib/prism/node.rb#1394 sig { returns(T.nilable(Prism::ElseNode)) } def else_clause; end # def end_keyword: () -> String? # - # source://prism//lib/prism/node.rb#1438 + # source://prism//lib/prism/node.rb#1419 sig { returns(T.nilable(String)) } def end_keyword; end # attr_reader end_keyword_loc: Location? # - # source://prism//lib/prism/node.rb#1420 + # source://prism//lib/prism/node.rb#1400 sig { returns(T.nilable(Prism::Location)) } def end_keyword_loc; end # attr_reader ensure_clause: EnsureNode? # - # source://prism//lib/prism/node.rb#1417 + # source://prism//lib/prism/node.rb#1397 sig { returns(T.nilable(Prism::EnsureNode)) } def ensure_clause; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#1443 + # source://prism//lib/prism/node.rb#1424 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader rescue_clause: RescueNode? # - # source://prism//lib/prism/node.rb#1411 + # source://prism//lib/prism/node.rb#1391 sig { returns(T.nilable(Prism::RescueNode)) } def rescue_clause; end - # source://prism//lib/prism/node.rb#1349 + # source://prism//lib/prism/node.rb#1337 def set_newline_flag(newline_marked); end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#1408 + # source://prism//lib/prism/node.rb#1388 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end @@ -1560,7 +1788,8 @@ class Prism::BeginNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#1488 + # source://prism//lib/prism/node.rb#1469 + sig { override.returns(Symbol) } def type; end class << self @@ -1571,7 +1800,7 @@ class Prism::BeginNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#1498 + # source://prism//lib/prism/node.rb#1479 def type; end end end @@ -1581,80 +1810,96 @@ end # bar(&args) # ^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#1507 +# source://prism//lib/prism/node.rb#1488 class Prism::BlockArgumentNode < ::Prism::Node - # def initialize: (Node? expression, Location operator_loc, Location location) -> void + # def initialize: (Prism::node? expression, Location operator_loc, Location location) -> void # # @return [BlockArgumentNode] a new instance of BlockArgumentNode # - # source://prism//lib/prism/node.rb#1509 + # source://prism//lib/prism/node.rb#1490 + sig do + params( + source: Prism::Source, + expression: T.nilable(Prism::Node), + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, expression, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#1518 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#1499 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1523 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1504 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#1535 + # source://prism//lib/prism/node.rb#1516 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#1528 + # source://prism//lib/prism/node.rb#1509 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> BlockArgumentNode + # def copy: (?expression: Prism::node?, ?operator_loc: Location, ?location: Location) -> BlockArgumentNode # - # source://prism//lib/prism/node.rb#1540 - sig { params(params: T.untyped).returns(Prism::BlockArgumentNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#1521 + sig do + params( + expression: T.nilable(Prism::Node), + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::BlockArgumentNode) + end + def copy(expression: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1523 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1504 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { expression: Node?, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { expression: Prism::node?, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#1553 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#1529 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # attr_reader expression: Node? + # attr_reader expression: Prism::node? # - # source://prism//lib/prism/node.rb#1558 + # source://prism//lib/prism/node.rb#1534 sig { returns(T.nilable(Prism::Node)) } def expression; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#1573 + # source://prism//lib/prism/node.rb#1550 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#1568 + # source://prism//lib/prism/node.rb#1545 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#1561 + # source://prism//lib/prism/node.rb#1537 sig { returns(Prism::Location) } def operator_loc; end @@ -1673,7 +1918,8 @@ class Prism::BlockArgumentNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#1599 + # source://prism//lib/prism/node.rb#1576 + sig { override.returns(Symbol) } def type; end class << self @@ -1684,7 +1930,7 @@ class Prism::BlockArgumentNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#1609 + # source://prism//lib/prism/node.rb#1586 def type; end end end @@ -1694,68 +1940,71 @@ end # a { |; b| } # ^ # -# source://prism//lib/prism/node.rb#1618 +# source://prism//lib/prism/node.rb#1595 class Prism::BlockLocalVariableNode < ::Prism::Node # def initialize: (Integer flags, Symbol name, Location location) -> void # # @return [BlockLocalVariableNode] a new instance of BlockLocalVariableNode # - # source://prism//lib/prism/node.rb#1620 + # source://prism//lib/prism/node.rb#1597 + sig { params(source: Prism::Source, flags: Integer, name: Symbol, location: Prism::Location).void } def initialize(source, flags, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#1629 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#1606 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1634 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1611 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#1644 + # source://prism//lib/prism/node.rb#1621 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#1639 + # source://prism//lib/prism/node.rb#1616 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> BlockLocalVariableNode + # def copy: (?flags: Integer, ?name: Symbol, ?location: Location) -> BlockLocalVariableNode # - # source://prism//lib/prism/node.rb#1649 - sig { params(params: T.untyped).returns(Prism::BlockLocalVariableNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#1626 + sig { params(flags: Integer, name: Symbol, location: Prism::Location).returns(Prism::BlockLocalVariableNode) } + def copy(flags: T.unsafe(nil), name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1634 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1611 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#1662 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#1634 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#1680 + # source://prism//lib/prism/node.rb#1652 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#1671 + # source://prism//lib/prism/node.rb#1643 sig { returns(Symbol) } def name; end @@ -1763,7 +2012,7 @@ class Prism::BlockLocalVariableNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#1675 + # source://prism//lib/prism/node.rb#1647 sig { returns(T::Boolean) } def repeated_parameter?; end @@ -1782,14 +2031,15 @@ class Prism::BlockLocalVariableNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#1702 + # source://prism//lib/prism/node.rb#1674 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#1667 + # source://prism//lib/prism/node.rb#1639 sig { returns(Integer) } def flags; end @@ -1801,7 +2051,7 @@ class Prism::BlockLocalVariableNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#1712 + # source://prism//lib/prism/node.rb#1684 def type; end end end @@ -1811,104 +2061,126 @@ end # [1, 2, 3].each { |i| puts x } # ^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#1721 +# source://prism//lib/prism/node.rb#1693 class Prism::BlockNode < ::Prism::Node - # def initialize: (Array[Symbol] locals, Node? parameters, Node? body, Location opening_loc, Location closing_loc, Location location) -> void + # def initialize: (Array[Symbol] locals, Prism::node? parameters, Prism::node? body, Location opening_loc, Location closing_loc, Location location) -> void # # @return [BlockNode] a new instance of BlockNode # - # source://prism//lib/prism/node.rb#1723 + # source://prism//lib/prism/node.rb#1695 + sig do + params( + source: Prism::Source, + locals: T::Array[Symbol], + parameters: T.nilable(Prism::Node), + body: T.nilable(Prism::Node), + opening_loc: Prism::Location, + closing_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, locals, parameters, body, opening_loc, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#1735 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#1707 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader body: Node? + # attr_reader body: Prism::node? # - # source://prism//lib/prism/node.rb#1785 + # source://prism//lib/prism/node.rb#1749 sig { returns(T.nilable(Prism::Node)) } def body; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1740 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1712 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#1806 + # source://prism//lib/prism/node.rb#1772 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#1794 + # source://prism//lib/prism/node.rb#1759 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#1753 + # source://prism//lib/prism/node.rb#1725 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#1745 + # source://prism//lib/prism/node.rb#1717 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> BlockNode + # def copy: (?locals: Array[Symbol], ?parameters: Prism::node?, ?body: Prism::node?, ?opening_loc: Location, ?closing_loc: Location, ?location: Location) -> BlockNode # - # source://prism//lib/prism/node.rb#1758 - sig { params(params: T.untyped).returns(Prism::BlockNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#1730 + sig do + params( + locals: T::Array[Symbol], + parameters: T.nilable(Prism::Node), + body: T.nilable(Prism::Node), + opening_loc: Prism::Location, + closing_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::BlockNode) + end + def copy(locals: T.unsafe(nil), parameters: T.unsafe(nil), body: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1740 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1712 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], parameters: Node?, body: Node?, opening_loc: Location, closing_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], parameters: Prism::node?, body: Prism::node?, opening_loc: Location, closing_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#1774 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#1738 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#1811 + # source://prism//lib/prism/node.rb#1777 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader locals: Array[Symbol] # - # source://prism//lib/prism/node.rb#1779 + # source://prism//lib/prism/node.rb#1743 sig { returns(T::Array[Symbol]) } def locals; end # def opening: () -> String # - # source://prism//lib/prism/node.rb#1801 + # source://prism//lib/prism/node.rb#1767 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#1788 + # source://prism//lib/prism/node.rb#1752 sig { returns(Prism::Location) } def opening_loc; end - # attr_reader parameters: Node? + # attr_reader parameters: Prism::node? # - # source://prism//lib/prism/node.rb#1782 + # source://prism//lib/prism/node.rb#1746 sig { returns(T.nilable(Prism::Node)) } def parameters; end @@ -1927,7 +2199,8 @@ class Prism::BlockNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#1845 + # source://prism//lib/prism/node.rb#1811 + sig { override.returns(Symbol) } def type; end class << self @@ -1938,7 +2211,7 @@ class Prism::BlockNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#1855 + # source://prism//lib/prism/node.rb#1821 def type; end end end @@ -1949,86 +2222,106 @@ end # ^^ # end # -# source://prism//lib/prism/node.rb#1865 +# source://prism//lib/prism/node.rb#1831 class Prism::BlockParameterNode < ::Prism::Node # def initialize: (Integer flags, Symbol? name, Location? name_loc, Location operator_loc, Location location) -> void # # @return [BlockParameterNode] a new instance of BlockParameterNode # - # source://prism//lib/prism/node.rb#1867 + # source://prism//lib/prism/node.rb#1833 + sig do + params( + source: Prism::Source, + flags: Integer, + name: T.nilable(Symbol), + name_loc: T.nilable(Prism::Location), + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, flags, name, name_loc, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#1878 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#1844 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1883 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1849 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#1893 + # source://prism//lib/prism/node.rb#1859 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#1888 + # source://prism//lib/prism/node.rb#1854 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> BlockParameterNode + # def copy: (?flags: Integer, ?name: Symbol?, ?name_loc: Location?, ?operator_loc: Location, ?location: Location) -> BlockParameterNode # - # source://prism//lib/prism/node.rb#1898 - sig { params(params: T.untyped).returns(Prism::BlockParameterNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#1864 + sig do + params( + flags: Integer, + name: T.nilable(Symbol), + name_loc: T.nilable(Prism::Location), + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::BlockParameterNode) + end + def copy(flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#1883 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1849 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, name: Symbol?, name_loc: Location?, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#1913 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#1872 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#1954 + # source://prism//lib/prism/node.rb#1915 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol? # - # source://prism//lib/prism/node.rb#1922 + # source://prism//lib/prism/node.rb#1881 sig { returns(T.nilable(Symbol)) } def name; end # attr_reader name_loc: Location? # - # source://prism//lib/prism/node.rb#1925 + # source://prism//lib/prism/node.rb#1884 sig { returns(T.nilable(Prism::Location)) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#1949 + # source://prism//lib/prism/node.rb#1910 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#1937 + # source://prism//lib/prism/node.rb#1897 sig { returns(Prism::Location) } def operator_loc; end @@ -2036,7 +2329,7 @@ class Prism::BlockParameterNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#1944 + # source://prism//lib/prism/node.rb#1905 sig { returns(T::Boolean) } def repeated_parameter?; end @@ -2055,14 +2348,15 @@ class Prism::BlockParameterNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#1982 + # source://prism//lib/prism/node.rb#1943 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#1918 + # source://prism//lib/prism/node.rb#1877 sig { returns(Integer) } def flags; end @@ -2074,7 +2368,7 @@ class Prism::BlockParameterNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#1992 + # source://prism//lib/prism/node.rb#1953 def type; end end end @@ -2088,98 +2382,118 @@ end # ^^^^^^^^^^^^^^^^^ # end # -# source://prism//lib/prism/node.rb#2005 +# source://prism//lib/prism/node.rb#1966 class Prism::BlockParametersNode < ::Prism::Node - # def initialize: (ParametersNode? parameters, Array[Node] locals, Location? opening_loc, Location? closing_loc, Location location) -> void + # def initialize: (ParametersNode? parameters, Array[BlockLocalVariableNode] locals, Location? opening_loc, Location? closing_loc, Location location) -> void # # @return [BlockParametersNode] a new instance of BlockParametersNode # - # source://prism//lib/prism/node.rb#2007 + # source://prism//lib/prism/node.rb#1968 + sig do + params( + source: Prism::Source, + parameters: T.nilable(Prism::ParametersNode), + locals: T::Array[Prism::BlockLocalVariableNode], + opening_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, parameters, locals, opening_loc, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#2018 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#1979 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2023 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1984 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#2097 + # source://prism//lib/prism/node.rb#2053 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#2079 + # source://prism//lib/prism/node.rb#2034 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#2036 + # source://prism//lib/prism/node.rb#1997 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#2028 + # source://prism//lib/prism/node.rb#1989 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> BlockParametersNode + # def copy: (?parameters: ParametersNode?, ?locals: Array[BlockLocalVariableNode], ?opening_loc: Location?, ?closing_loc: Location?, ?location: Location) -> BlockParametersNode # - # source://prism//lib/prism/node.rb#2041 - sig { params(params: T.untyped).returns(Prism::BlockParametersNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#2002 + sig do + params( + parameters: T.nilable(Prism::ParametersNode), + locals: T::Array[Prism::BlockLocalVariableNode], + opening_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::BlockParametersNode) + end + def copy(parameters: T.unsafe(nil), locals: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2023 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#1984 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { parameters: ParametersNode?, locals: Array[Node], opening_loc: Location?, closing_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { parameters: ParametersNode?, locals: Array[BlockLocalVariableNode], opening_loc: Location?, closing_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#2056 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#2010 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#2102 + # source://prism//lib/prism/node.rb#2058 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader locals: Array[Node] + # attr_reader locals: Array[BlockLocalVariableNode] # - # source://prism//lib/prism/node.rb#2064 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#2018 + sig { returns(T::Array[Prism::BlockLocalVariableNode]) } def locals; end # def opening: () -> String? # - # source://prism//lib/prism/node.rb#2092 + # source://prism//lib/prism/node.rb#2048 sig { returns(T.nilable(String)) } def opening; end # attr_reader opening_loc: Location? # - # source://prism//lib/prism/node.rb#2067 + # source://prism//lib/prism/node.rb#2021 sig { returns(T.nilable(Prism::Location)) } def opening_loc; end # attr_reader parameters: ParametersNode? # - # source://prism//lib/prism/node.rb#2061 + # source://prism//lib/prism/node.rb#2015 sig { returns(T.nilable(Prism::ParametersNode)) } def parameters; end @@ -2198,7 +2512,8 @@ class Prism::BlockParametersNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#2130 + # source://prism//lib/prism/node.rb#2086 + sig { override.returns(Symbol) } def type; end class << self @@ -2209,7 +2524,7 @@ class Prism::BlockParametersNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#2140 + # source://prism//lib/prism/node.rb#2096 def type; end end end @@ -2219,80 +2534,96 @@ end # break foo # ^^^^^^^^^ # -# source://prism//lib/prism/node.rb#2149 +# source://prism//lib/prism/node.rb#2105 class Prism::BreakNode < ::Prism::Node # def initialize: (ArgumentsNode? arguments, Location keyword_loc, Location location) -> void # # @return [BreakNode] a new instance of BreakNode # - # source://prism//lib/prism/node.rb#2151 + # source://prism//lib/prism/node.rb#2107 + sig do + params( + source: Prism::Source, + arguments: T.nilable(Prism::ArgumentsNode), + keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, arguments, keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#2160 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#2116 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader arguments: ArgumentsNode? # - # source://prism//lib/prism/node.rb#2200 + # source://prism//lib/prism/node.rb#2151 sig { returns(T.nilable(Prism::ArgumentsNode)) } def arguments; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2165 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#2121 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#2177 + # source://prism//lib/prism/node.rb#2133 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#2170 + # source://prism//lib/prism/node.rb#2126 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> BreakNode + # def copy: (?arguments: ArgumentsNode?, ?keyword_loc: Location, ?location: Location) -> BreakNode # - # source://prism//lib/prism/node.rb#2182 - sig { params(params: T.untyped).returns(Prism::BreakNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#2138 + sig do + params( + arguments: T.nilable(Prism::ArgumentsNode), + keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::BreakNode) + end + def copy(arguments: T.unsafe(nil), keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2165 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#2121 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { arguments: ArgumentsNode?, keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#2195 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#2146 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#2215 + # source://prism//lib/prism/node.rb#2167 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#2210 + # source://prism//lib/prism/node.rb#2162 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#2203 + # source://prism//lib/prism/node.rb#2154 sig { returns(Prism::Location) } def keyword_loc; end @@ -2311,7 +2642,8 @@ class Prism::BreakNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#2241 + # source://prism//lib/prism/node.rb#2193 + sig { override.returns(Symbol) } def type; end class << self @@ -2322,7 +2654,7 @@ class Prism::BreakNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#2251 + # source://prism//lib/prism/node.rb#2203 def type; end end end @@ -2332,126 +2664,154 @@ end # foo.bar &&= value # ^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#2260 +# source://prism//lib/prism/node.rb#2212 class Prism::CallAndWriteNode < ::Prism::Node - # def initialize: (Integer flags, Node? receiver, Location? call_operator_loc, Location? message_loc, Symbol read_name, Symbol write_name, Location operator_loc, Node value, Location location) -> void + # def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Location? message_loc, Symbol read_name, Symbol write_name, Location operator_loc, Prism::node value, Location location) -> void # # @return [CallAndWriteNode] a new instance of CallAndWriteNode # - # source://prism//lib/prism/node.rb#2262 + # source://prism//lib/prism/node.rb#2214 + sig do + params( + source: Prism::Source, + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + message_loc: T.nilable(Prism::Location), + read_name: Symbol, + write_name: Symbol, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, flags, receiver, call_operator_loc, message_loc, read_name, write_name, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#2277 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#2229 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def attribute_write?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2381 + # source://prism//lib/prism/node.rb#2325 sig { returns(T::Boolean) } def attribute_write?; end # def call_operator: () -> String? # - # source://prism//lib/prism/node.rb#2391 + # source://prism//lib/prism/node.rb#2335 sig { returns(T.nilable(String)) } def call_operator; end # attr_reader call_operator_loc: Location? # - # source://prism//lib/prism/node.rb#2331 + # source://prism//lib/prism/node.rb#2272 sig { returns(T.nilable(Prism::Location)) } def call_operator_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2282 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#2234 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#2295 + # source://prism//lib/prism/node.rb#2247 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#2287 + # source://prism//lib/prism/node.rb#2239 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> CallAndWriteNode + # def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?message_loc: Location?, ?read_name: Symbol, ?write_name: Symbol, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> CallAndWriteNode # - # source://prism//lib/prism/node.rb#2300 - sig { params(params: T.untyped).returns(Prism::CallAndWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#2252 + sig do + params( + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + message_loc: T.nilable(Prism::Location), + read_name: Symbol, + write_name: Symbol, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::CallAndWriteNode) + end + def copy(flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), message_loc: T.unsafe(nil), read_name: T.unsafe(nil), write_name: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2282 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#2234 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#2319 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#2260 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def ignore_visibility?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2386 + # source://prism//lib/prism/node.rb#2330 sig { returns(T::Boolean) } def ignore_visibility?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#2406 + # source://prism//lib/prism/node.rb#2350 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def message: () -> String? # - # source://prism//lib/prism/node.rb#2396 + # source://prism//lib/prism/node.rb#2340 sig { returns(T.nilable(String)) } def message; end # attr_reader message_loc: Location? # - # source://prism//lib/prism/node.rb#2343 + # source://prism//lib/prism/node.rb#2285 sig { returns(T.nilable(Prism::Location)) } def message_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#2401 + # source://prism//lib/prism/node.rb#2345 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#2361 + # source://prism//lib/prism/node.rb#2304 sig { returns(Prism::Location) } def operator_loc; end # attr_reader read_name: Symbol # - # source://prism//lib/prism/node.rb#2355 + # source://prism//lib/prism/node.rb#2298 sig { returns(Symbol) } def read_name; end - # attr_reader receiver: Node? + # attr_reader receiver: Prism::node? # - # source://prism//lib/prism/node.rb#2328 + # source://prism//lib/prism/node.rb#2269 sig { returns(T.nilable(Prism::Node)) } def receiver; end @@ -2459,7 +2819,7 @@ class Prism::CallAndWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2371 + # source://prism//lib/prism/node.rb#2315 sig { returns(T::Boolean) } def safe_navigation?; end @@ -2478,12 +2838,13 @@ class Prism::CallAndWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#2440 + # source://prism//lib/prism/node.rb#2384 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#2367 + # source://prism//lib/prism/node.rb#2311 sig { returns(Prism::Node) } def value; end @@ -2491,13 +2852,13 @@ class Prism::CallAndWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2376 + # source://prism//lib/prism/node.rb#2320 sig { returns(T::Boolean) } def variable_call?; end # attr_reader write_name: Symbol # - # source://prism//lib/prism/node.rb#2358 + # source://prism//lib/prism/node.rb#2301 sig { returns(Symbol) } def write_name; end @@ -2505,7 +2866,7 @@ class Prism::CallAndWriteNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#2324 + # source://prism//lib/prism/node.rb#2265 sig { returns(Integer) } def flags; end @@ -2517,7 +2878,7 @@ class Prism::CallAndWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#2450 + # source://prism//lib/prism/node.rb#2394 def type; end end end @@ -2542,24 +2903,39 @@ end # foo&.bar # ^^^^^^^^ # -# source://prism//lib/prism/node.rb#2474 +# source://prism//lib/prism/node.rb#2418 class Prism::CallNode < ::Prism::Node - # def initialize: (Integer flags, Node? receiver, Location? call_operator_loc, Symbol name, Location? message_loc, Location? opening_loc, ArgumentsNode? arguments, Location? closing_loc, Node? block, Location location) -> void + # def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Symbol name, Location? message_loc, Location? opening_loc, ArgumentsNode? arguments, Location? closing_loc, Prism::node? block, Location location) -> void # # @return [CallNode] a new instance of CallNode # - # source://prism//lib/prism/node.rb#2476 + # source://prism//lib/prism/node.rb#2420 + sig do + params( + source: Prism::Source, + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + name: Symbol, + message_loc: T.nilable(Prism::Location), + opening_loc: T.nilable(Prism::Location), + arguments: T.nilable(Prism::ArgumentsNode), + closing_loc: T.nilable(Prism::Location), + block: T.nilable(Prism::Node), + location: Prism::Location + ).void + end def initialize(source, flags, receiver, call_operator_loc, name, message_loc, opening_loc, arguments, closing_loc, block, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#2492 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#2436 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader arguments: ArgumentsNode? # - # source://prism//lib/prism/node.rb#2596 + # source://prism//lib/prism/node.rb#2531 sig { returns(T.nilable(Prism::ArgumentsNode)) } def arguments; end @@ -2567,119 +2943,134 @@ class Prism::CallNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2625 + # source://prism//lib/prism/node.rb#2561 sig { returns(T::Boolean) } def attribute_write?; end - # attr_reader block: Node? + # attr_reader block: Prism::node? # - # source://prism//lib/prism/node.rb#2611 + # source://prism//lib/prism/node.rb#2547 sig { returns(T.nilable(Prism::Node)) } def block; end # def call_operator: () -> String? # - # source://prism//lib/prism/node.rb#2635 + # source://prism//lib/prism/node.rb#2571 sig { returns(T.nilable(String)) } def call_operator; end # attr_reader call_operator_loc: Location? # - # source://prism//lib/prism/node.rb#2557 + # source://prism//lib/prism/node.rb#2489 sig { returns(T.nilable(Prism::Location)) } def call_operator_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2497 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#2441 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#2650 + # source://prism//lib/prism/node.rb#2586 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#2599 + # source://prism//lib/prism/node.rb#2534 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#2511 + # source://prism//lib/prism/node.rb#2455 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#2502 + # source://prism//lib/prism/node.rb#2446 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> CallNode + # def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?name: Symbol, ?message_loc: Location?, ?opening_loc: Location?, ?arguments: ArgumentsNode?, ?closing_loc: Location?, ?block: Prism::node?, ?location: Location) -> CallNode # - # source://prism//lib/prism/node.rb#2516 - sig { params(params: T.untyped).returns(Prism::CallNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#2460 + sig do + params( + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + name: Symbol, + message_loc: T.nilable(Prism::Location), + opening_loc: T.nilable(Prism::Location), + arguments: T.nilable(Prism::ArgumentsNode), + closing_loc: T.nilable(Prism::Location), + block: T.nilable(Prism::Node), + location: Prism::Location + ).returns(Prism::CallNode) + end + def copy(flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), name: T.unsafe(nil), message_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2497 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#2441 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Node?, call_operator_loc: Location?, name: Symbol, message_loc: Location?, opening_loc: Location?, arguments: ArgumentsNode?, closing_loc: Location?, block: Node?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node?, call_operator_loc: Location?, name: Symbol, message_loc: Location?, opening_loc: Location?, arguments: ArgumentsNode?, closing_loc: Location?, block: Prism::node?, location: Location } # - # source://prism//lib/prism/node.rb#2536 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#2468 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def ignore_visibility?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2630 + # source://prism//lib/prism/node.rb#2566 sig { returns(T::Boolean) } def ignore_visibility?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#2655 + # source://prism//lib/prism/node.rb#2591 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def message: () -> String? # - # source://prism//lib/prism/node.rb#2640 + # source://prism//lib/prism/node.rb#2576 sig { returns(T.nilable(String)) } def message; end # attr_reader message_loc: Location? # - # source://prism//lib/prism/node.rb#2572 + # source://prism//lib/prism/node.rb#2505 sig { returns(T.nilable(Prism::Location)) } def message_loc; end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#2569 + # source://prism//lib/prism/node.rb#2502 sig { returns(Symbol) } def name; end # def opening: () -> String? # - # source://prism//lib/prism/node.rb#2645 + # source://prism//lib/prism/node.rb#2581 sig { returns(T.nilable(String)) } def opening; end # attr_reader opening_loc: Location? # - # source://prism//lib/prism/node.rb#2584 + # source://prism//lib/prism/node.rb#2518 sig { returns(T.nilable(Prism::Location)) } def opening_loc; end @@ -2694,7 +3085,7 @@ class Prism::CallNode < ::Prism::Node # foo + bar # ^^^ # - # source://prism//lib/prism/node.rb#2554 + # source://prism//lib/prism/node.rb#2486 sig { returns(T.nilable(Prism::Node)) } def receiver; end @@ -2702,7 +3093,7 @@ class Prism::CallNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2615 + # source://prism//lib/prism/node.rb#2551 sig { returns(T::Boolean) } def safe_navigation?; end @@ -2721,14 +3112,15 @@ class Prism::CallNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#2699 + # source://prism//lib/prism/node.rb#2635 + sig { override.returns(Symbol) } def type; end # def variable_call?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2620 + # source://prism//lib/prism/node.rb#2556 sig { returns(T::Boolean) } def variable_call?; end @@ -2736,7 +3128,7 @@ class Prism::CallNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#2541 + # source://prism//lib/prism/node.rb#2473 sig { returns(Integer) } def flags; end @@ -2748,34 +3140,34 @@ class Prism::CallNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#2709 + # source://prism//lib/prism/node.rb#2645 def type; end end end # Flags for call nodes. # -# source://prism//lib/prism/node.rb#19253 +# source://prism//lib/prism/node.rb#18842 module Prism::CallNodeFlags; end # a call that is an attribute write, so the value being written should be returned # -# source://prism//lib/prism/node.rb#19261 +# source://prism//lib/prism/node.rb#18850 Prism::CallNodeFlags::ATTRIBUTE_WRITE = T.let(T.unsafe(nil), Integer) # a call that ignores method visibility # -# source://prism//lib/prism/node.rb#19264 +# source://prism//lib/prism/node.rb#18853 Prism::CallNodeFlags::IGNORE_VISIBILITY = T.let(T.unsafe(nil), Integer) # &. operator # -# source://prism//lib/prism/node.rb#19255 +# source://prism//lib/prism/node.rb#18844 Prism::CallNodeFlags::SAFE_NAVIGATION = T.let(T.unsafe(nil), Integer) # a call that could have been a local variable # -# source://prism//lib/prism/node.rb#19258 +# source://prism//lib/prism/node.rb#18847 Prism::CallNodeFlags::VARIABLE_CALL = T.let(T.unsafe(nil), Integer) # Represents the use of an assignment operator on a call. @@ -2783,126 +3175,156 @@ Prism::CallNodeFlags::VARIABLE_CALL = T.let(T.unsafe(nil), Integer) # foo.bar += baz # ^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#2718 +# source://prism//lib/prism/node.rb#2654 class Prism::CallOperatorWriteNode < ::Prism::Node - # def initialize: (Integer flags, Node? receiver, Location? call_operator_loc, Location? message_loc, Symbol read_name, Symbol write_name, Symbol operator, Location operator_loc, Node value, Location location) -> void + # def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Location? message_loc, Symbol read_name, Symbol write_name, Symbol operator, Location operator_loc, Prism::node value, Location location) -> void # # @return [CallOperatorWriteNode] a new instance of CallOperatorWriteNode # - # source://prism//lib/prism/node.rb#2720 + # source://prism//lib/prism/node.rb#2656 + sig do + params( + source: Prism::Source, + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + message_loc: T.nilable(Prism::Location), + read_name: Symbol, + write_name: Symbol, + operator: Symbol, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, flags, receiver, call_operator_loc, message_loc, read_name, write_name, operator, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#2736 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#2672 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def attribute_write?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2844 + # source://prism//lib/prism/node.rb#2771 sig { returns(T::Boolean) } def attribute_write?; end # def call_operator: () -> String? # - # source://prism//lib/prism/node.rb#2854 + # source://prism//lib/prism/node.rb#2781 sig { returns(T.nilable(String)) } def call_operator; end # attr_reader call_operator_loc: Location? # - # source://prism//lib/prism/node.rb#2791 + # source://prism//lib/prism/node.rb#2715 sig { returns(T.nilable(Prism::Location)) } def call_operator_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2741 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#2677 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#2754 + # source://prism//lib/prism/node.rb#2690 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#2746 + # source://prism//lib/prism/node.rb#2682 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> CallOperatorWriteNode + # def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?message_loc: Location?, ?read_name: Symbol, ?write_name: Symbol, ?operator: Symbol, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> CallOperatorWriteNode # - # source://prism//lib/prism/node.rb#2759 - sig { params(params: T.untyped).returns(Prism::CallOperatorWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#2695 + sig do + params( + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + message_loc: T.nilable(Prism::Location), + read_name: Symbol, + write_name: Symbol, + operator: Symbol, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::CallOperatorWriteNode) + end + def copy(flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), message_loc: T.unsafe(nil), read_name: T.unsafe(nil), write_name: T.unsafe(nil), operator: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2741 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#2677 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol, operator: Symbol, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol, operator: Symbol, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#2779 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#2703 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def ignore_visibility?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2849 + # source://prism//lib/prism/node.rb#2776 sig { returns(T::Boolean) } def ignore_visibility?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#2864 + # source://prism//lib/prism/node.rb#2791 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def message: () -> String? # - # source://prism//lib/prism/node.rb#2859 + # source://prism//lib/prism/node.rb#2786 sig { returns(T.nilable(String)) } def message; end # attr_reader message_loc: Location? # - # source://prism//lib/prism/node.rb#2803 + # source://prism//lib/prism/node.rb#2728 sig { returns(T.nilable(Prism::Location)) } def message_loc; end # attr_reader operator: Symbol # - # source://prism//lib/prism/node.rb#2821 + # source://prism//lib/prism/node.rb#2747 sig { returns(Symbol) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#2824 + # source://prism//lib/prism/node.rb#2750 sig { returns(Prism::Location) } def operator_loc; end # attr_reader read_name: Symbol # - # source://prism//lib/prism/node.rb#2815 + # source://prism//lib/prism/node.rb#2741 sig { returns(Symbol) } def read_name; end - # attr_reader receiver: Node? + # attr_reader receiver: Prism::node? # - # source://prism//lib/prism/node.rb#2788 + # source://prism//lib/prism/node.rb#2712 sig { returns(T.nilable(Prism::Node)) } def receiver; end @@ -2910,7 +3332,7 @@ class Prism::CallOperatorWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2834 + # source://prism//lib/prism/node.rb#2761 sig { returns(T::Boolean) } def safe_navigation?; end @@ -2929,12 +3351,13 @@ class Prism::CallOperatorWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#2899 + # source://prism//lib/prism/node.rb#2826 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#2830 + # source://prism//lib/prism/node.rb#2757 sig { returns(Prism::Node) } def value; end @@ -2942,13 +3365,13 @@ class Prism::CallOperatorWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#2839 + # source://prism//lib/prism/node.rb#2766 sig { returns(T::Boolean) } def variable_call?; end # attr_reader write_name: Symbol # - # source://prism//lib/prism/node.rb#2818 + # source://prism//lib/prism/node.rb#2744 sig { returns(Symbol) } def write_name; end @@ -2956,7 +3379,7 @@ class Prism::CallOperatorWriteNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#2784 + # source://prism//lib/prism/node.rb#2708 sig { returns(Integer) } def flags; end @@ -2968,7 +3391,7 @@ class Prism::CallOperatorWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#2909 + # source://prism//lib/prism/node.rb#2836 def type; end end end @@ -2978,126 +3401,154 @@ end # foo.bar ||= value # ^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#2918 +# source://prism//lib/prism/node.rb#2845 class Prism::CallOrWriteNode < ::Prism::Node - # def initialize: (Integer flags, Node? receiver, Location? call_operator_loc, Location? message_loc, Symbol read_name, Symbol write_name, Location operator_loc, Node value, Location location) -> void + # def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Location? message_loc, Symbol read_name, Symbol write_name, Location operator_loc, Prism::node value, Location location) -> void # # @return [CallOrWriteNode] a new instance of CallOrWriteNode # - # source://prism//lib/prism/node.rb#2920 + # source://prism//lib/prism/node.rb#2847 + sig do + params( + source: Prism::Source, + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + message_loc: T.nilable(Prism::Location), + read_name: Symbol, + write_name: Symbol, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, flags, receiver, call_operator_loc, message_loc, read_name, write_name, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#2935 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#2862 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def attribute_write?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#3039 + # source://prism//lib/prism/node.rb#2958 sig { returns(T::Boolean) } def attribute_write?; end # def call_operator: () -> String? # - # source://prism//lib/prism/node.rb#3049 + # source://prism//lib/prism/node.rb#2968 sig { returns(T.nilable(String)) } def call_operator; end # attr_reader call_operator_loc: Location? # - # source://prism//lib/prism/node.rb#2989 + # source://prism//lib/prism/node.rb#2905 sig { returns(T.nilable(Prism::Location)) } def call_operator_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2940 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#2867 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#2953 + # source://prism//lib/prism/node.rb#2880 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#2945 + # source://prism//lib/prism/node.rb#2872 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> CallOrWriteNode + # def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?message_loc: Location?, ?read_name: Symbol, ?write_name: Symbol, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> CallOrWriteNode # - # source://prism//lib/prism/node.rb#2958 - sig { params(params: T.untyped).returns(Prism::CallOrWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#2885 + sig do + params( + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + message_loc: T.nilable(Prism::Location), + read_name: Symbol, + write_name: Symbol, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::CallOrWriteNode) + end + def copy(flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), message_loc: T.unsafe(nil), read_name: T.unsafe(nil), write_name: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#2940 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#2867 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#2977 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#2893 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def ignore_visibility?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#3044 + # source://prism//lib/prism/node.rb#2963 sig { returns(T::Boolean) } def ignore_visibility?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#3064 + # source://prism//lib/prism/node.rb#2983 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def message: () -> String? # - # source://prism//lib/prism/node.rb#3054 + # source://prism//lib/prism/node.rb#2973 sig { returns(T.nilable(String)) } def message; end # attr_reader message_loc: Location? # - # source://prism//lib/prism/node.rb#3001 + # source://prism//lib/prism/node.rb#2918 sig { returns(T.nilable(Prism::Location)) } def message_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#3059 + # source://prism//lib/prism/node.rb#2978 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#3019 + # source://prism//lib/prism/node.rb#2937 sig { returns(Prism::Location) } def operator_loc; end # attr_reader read_name: Symbol # - # source://prism//lib/prism/node.rb#3013 + # source://prism//lib/prism/node.rb#2931 sig { returns(Symbol) } def read_name; end - # attr_reader receiver: Node? + # attr_reader receiver: Prism::node? # - # source://prism//lib/prism/node.rb#2986 + # source://prism//lib/prism/node.rb#2902 sig { returns(T.nilable(Prism::Node)) } def receiver; end @@ -3105,7 +3556,7 @@ class Prism::CallOrWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#3029 + # source://prism//lib/prism/node.rb#2948 sig { returns(T::Boolean) } def safe_navigation?; end @@ -3124,12 +3575,13 @@ class Prism::CallOrWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#3098 + # source://prism//lib/prism/node.rb#3017 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#3025 + # source://prism//lib/prism/node.rb#2944 sig { returns(Prism::Node) } def value; end @@ -3137,13 +3589,13 @@ class Prism::CallOrWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#3034 + # source://prism//lib/prism/node.rb#2953 sig { returns(T::Boolean) } def variable_call?; end # attr_reader write_name: Symbol # - # source://prism//lib/prism/node.rb#3016 + # source://prism//lib/prism/node.rb#2934 sig { returns(Symbol) } def write_name; end @@ -3151,7 +3603,7 @@ class Prism::CallOrWriteNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#2982 + # source://prism//lib/prism/node.rb#2898 sig { returns(Integer) } def flags; end @@ -3163,7 +3615,7 @@ class Prism::CallOrWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#3108 + # source://prism//lib/prism/node.rb#3027 def type; end end end @@ -3181,114 +3633,136 @@ end # for foo.bar in baz do end # ^^^^^^^ # -# source://prism//lib/prism/node.rb#3125 +# source://prism//lib/prism/node.rb#3044 class Prism::CallTargetNode < ::Prism::Node - # def initialize: (Integer flags, Node receiver, Location call_operator_loc, Symbol name, Location message_loc, Location location) -> void + # def initialize: (Integer flags, Prism::node receiver, Location call_operator_loc, Symbol name, Location message_loc, Location location) -> void # # @return [CallTargetNode] a new instance of CallTargetNode # - # source://prism//lib/prism/node.rb#3127 + # source://prism//lib/prism/node.rb#3046 + sig do + params( + source: Prism::Source, + flags: Integer, + receiver: Prism::Node, + call_operator_loc: Prism::Location, + name: Symbol, + message_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, flags, receiver, call_operator_loc, name, message_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#3139 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#3058 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def attribute_write?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#3213 + # source://prism//lib/prism/node.rb#3126 sig { returns(T::Boolean) } def attribute_write?; end # def call_operator: () -> String # - # source://prism//lib/prism/node.rb#3223 + # source://prism//lib/prism/node.rb#3136 sig { returns(String) } def call_operator; end # attr_reader call_operator_loc: Location # - # source://prism//lib/prism/node.rb#3187 + # source://prism//lib/prism/node.rb#3098 sig { returns(Prism::Location) } def call_operator_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3144 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3063 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#3154 + # source://prism//lib/prism/node.rb#3073 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#3149 + # source://prism//lib/prism/node.rb#3068 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> CallTargetNode + # def copy: (?flags: Integer, ?receiver: Prism::node, ?call_operator_loc: Location, ?name: Symbol, ?message_loc: Location, ?location: Location) -> CallTargetNode # - # source://prism//lib/prism/node.rb#3159 - sig { params(params: T.untyped).returns(Prism::CallTargetNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#3078 + sig do + params( + flags: Integer, + receiver: Prism::Node, + call_operator_loc: Prism::Location, + name: Symbol, + message_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::CallTargetNode) + end + def copy(flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), name: T.unsafe(nil), message_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3144 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3063 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Node, call_operator_loc: Location, name: Symbol, message_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node, call_operator_loc: Location, name: Symbol, message_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#3175 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#3086 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def ignore_visibility?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#3218 + # source://prism//lib/prism/node.rb#3131 sig { returns(T::Boolean) } def ignore_visibility?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#3233 + # source://prism//lib/prism/node.rb#3146 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def message: () -> String # - # source://prism//lib/prism/node.rb#3228 + # source://prism//lib/prism/node.rb#3141 sig { returns(String) } def message; end # attr_reader message_loc: Location # - # source://prism//lib/prism/node.rb#3196 + # source://prism//lib/prism/node.rb#3108 sig { returns(Prism::Location) } def message_loc; end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#3193 + # source://prism//lib/prism/node.rb#3105 sig { returns(Symbol) } def name; end - # attr_reader receiver: Node + # attr_reader receiver: Prism::node # - # source://prism//lib/prism/node.rb#3184 + # source://prism//lib/prism/node.rb#3095 sig { returns(Prism::Node) } def receiver; end @@ -3296,7 +3770,7 @@ class Prism::CallTargetNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#3203 + # source://prism//lib/prism/node.rb#3116 sig { returns(T::Boolean) } def safe_navigation?; end @@ -3315,14 +3789,15 @@ class Prism::CallTargetNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#3259 + # source://prism//lib/prism/node.rb#3172 + sig { override.returns(Symbol) } def type; end # def variable_call?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#3208 + # source://prism//lib/prism/node.rb#3121 sig { returns(T::Boolean) } def variable_call?; end @@ -3330,7 +3805,7 @@ class Prism::CallTargetNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#3180 + # source://prism//lib/prism/node.rb#3091 sig { returns(Integer) } def flags; end @@ -3342,7 +3817,7 @@ class Prism::CallTargetNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#3269 + # source://prism//lib/prism/node.rb#3182 def type; end end end @@ -3352,80 +3827,98 @@ end # foo => [bar => baz] # ^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#3278 +# source://prism//lib/prism/node.rb#3191 class Prism::CapturePatternNode < ::Prism::Node - # def initialize: (Node value, Node target, Location operator_loc, Location location) -> void + # def initialize: (Prism::node value, Prism::node target, Location operator_loc, Location location) -> void # # @return [CapturePatternNode] a new instance of CapturePatternNode # - # source://prism//lib/prism/node.rb#3280 + # source://prism//lib/prism/node.rb#3193 + sig do + params( + source: Prism::Source, + value: Prism::Node, + target: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, value, target, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#3290 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#3203 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3295 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3208 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#3305 + # source://prism//lib/prism/node.rb#3218 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#3300 + # source://prism//lib/prism/node.rb#3213 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> CapturePatternNode + # def copy: (?value: Prism::node, ?target: Prism::node, ?operator_loc: Location, ?location: Location) -> CapturePatternNode # - # source://prism//lib/prism/node.rb#3310 - sig { params(params: T.untyped).returns(Prism::CapturePatternNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#3223 + sig do + params( + value: Prism::Node, + target: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::CapturePatternNode) + end + def copy(value: T.unsafe(nil), target: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3295 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3208 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { value: Node, target: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { value: Prism::node, target: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#3324 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#3231 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#3347 + # source://prism//lib/prism/node.rb#3255 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#3342 + # source://prism//lib/prism/node.rb#3250 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#3335 + # source://prism//lib/prism/node.rb#3242 sig { returns(Prism::Location) } def operator_loc; end - # attr_reader target: Node + # attr_reader target: Prism::node # - # source://prism//lib/prism/node.rb#3332 + # source://prism//lib/prism/node.rb#3239 sig { returns(Prism::Node) } def target; end @@ -3444,12 +3937,13 @@ class Prism::CapturePatternNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#3371 + # source://prism//lib/prism/node.rb#3279 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#3329 + # source://prism//lib/prism/node.rb#3236 sig { returns(Prism::Node) } def value; end @@ -3461,7 +3955,7 @@ class Prism::CapturePatternNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#3381 + # source://prism//lib/prism/node.rb#3289 def type; end end end @@ -3473,104 +3967,126 @@ end # end # ^^^^^^^^^ # -# source://prism//lib/prism/node.rb#3392 +# source://prism//lib/prism/node.rb#3300 class Prism::CaseMatchNode < ::Prism::Node - # def initialize: (Node? predicate, Array[Node] conditions, ElseNode? consequent, Location case_keyword_loc, Location end_keyword_loc, Location location) -> void + # def initialize: (Prism::node? predicate, Array[Prism::node] conditions, ElseNode? consequent, Location case_keyword_loc, Location end_keyword_loc, Location location) -> void # # @return [CaseMatchNode] a new instance of CaseMatchNode # - # source://prism//lib/prism/node.rb#3394 + # source://prism//lib/prism/node.rb#3302 + sig do + params( + source: Prism::Source, + predicate: T.nilable(Prism::Node), + conditions: T::Array[Prism::Node], + consequent: T.nilable(Prism::ElseNode), + case_keyword_loc: Prism::Location, + end_keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, predicate, conditions, consequent, case_keyword_loc, end_keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#3406 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#3314 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def case_keyword: () -> String # - # source://prism//lib/prism/node.rb#3473 + # source://prism//lib/prism/node.rb#3375 sig { returns(String) } def case_keyword; end # attr_reader case_keyword_loc: Location # - # source://prism//lib/prism/node.rb#3460 + # source://prism//lib/prism/node.rb#3360 sig { returns(Prism::Location) } def case_keyword_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3411 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3319 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#3425 + # source://prism//lib/prism/node.rb#3333 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#3416 + # source://prism//lib/prism/node.rb#3324 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # attr_reader conditions: Array[Node] + # attr_reader conditions: Array[Prism::node] # - # source://prism//lib/prism/node.rb#3454 + # source://prism//lib/prism/node.rb#3354 sig { returns(T::Array[Prism::Node]) } def conditions; end # attr_reader consequent: ElseNode? # - # source://prism//lib/prism/node.rb#3457 + # source://prism//lib/prism/node.rb#3357 sig { returns(T.nilable(Prism::ElseNode)) } def consequent; end - # def copy: (**params) -> CaseMatchNode + # def copy: (?predicate: Prism::node?, ?conditions: Array[Prism::node], ?consequent: ElseNode?, ?case_keyword_loc: Location, ?end_keyword_loc: Location, ?location: Location) -> CaseMatchNode # - # source://prism//lib/prism/node.rb#3430 - sig { params(params: T.untyped).returns(Prism::CaseMatchNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#3338 + sig do + params( + predicate: T.nilable(Prism::Node), + conditions: T::Array[Prism::Node], + consequent: T.nilable(Prism::ElseNode), + case_keyword_loc: Prism::Location, + end_keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::CaseMatchNode) + end + def copy(predicate: T.unsafe(nil), conditions: T.unsafe(nil), consequent: T.unsafe(nil), case_keyword_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3411 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3319 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { predicate: Node?, conditions: Array[Node], consequent: ElseNode?, case_keyword_loc: Location, end_keyword_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { predicate: Prism::node?, conditions: Array[Prism::node], consequent: ElseNode?, case_keyword_loc: Location, end_keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#3446 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#3346 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def end_keyword: () -> String # - # source://prism//lib/prism/node.rb#3478 + # source://prism//lib/prism/node.rb#3380 sig { returns(String) } def end_keyword; end # attr_reader end_keyword_loc: Location # - # source://prism//lib/prism/node.rb#3466 + # source://prism//lib/prism/node.rb#3367 sig { returns(Prism::Location) } def end_keyword_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#3483 + # source://prism//lib/prism/node.rb#3385 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader predicate: Node? + # attr_reader predicate: Prism::node? # - # source://prism//lib/prism/node.rb#3451 + # source://prism//lib/prism/node.rb#3351 sig { returns(T.nilable(Prism::Node)) } def predicate; end @@ -3589,7 +4105,8 @@ class Prism::CaseMatchNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#3517 + # source://prism//lib/prism/node.rb#3419 + sig { override.returns(Symbol) } def type; end class << self @@ -3600,7 +4117,7 @@ class Prism::CaseMatchNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#3527 + # source://prism//lib/prism/node.rb#3429 def type; end end end @@ -3612,104 +4129,126 @@ end # end # ^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#3538 +# source://prism//lib/prism/node.rb#3440 class Prism::CaseNode < ::Prism::Node - # def initialize: (Node? predicate, Array[Node] conditions, ElseNode? consequent, Location case_keyword_loc, Location end_keyword_loc, Location location) -> void + # def initialize: (Prism::node? predicate, Array[Prism::node] conditions, ElseNode? consequent, Location case_keyword_loc, Location end_keyword_loc, Location location) -> void # # @return [CaseNode] a new instance of CaseNode # - # source://prism//lib/prism/node.rb#3540 + # source://prism//lib/prism/node.rb#3442 + sig do + params( + source: Prism::Source, + predicate: T.nilable(Prism::Node), + conditions: T::Array[Prism::Node], + consequent: T.nilable(Prism::ElseNode), + case_keyword_loc: Prism::Location, + end_keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, predicate, conditions, consequent, case_keyword_loc, end_keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#3552 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#3454 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def case_keyword: () -> String # - # source://prism//lib/prism/node.rb#3619 + # source://prism//lib/prism/node.rb#3515 sig { returns(String) } def case_keyword; end # attr_reader case_keyword_loc: Location # - # source://prism//lib/prism/node.rb#3606 + # source://prism//lib/prism/node.rb#3500 sig { returns(Prism::Location) } def case_keyword_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3557 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3459 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#3571 + # source://prism//lib/prism/node.rb#3473 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#3562 + # source://prism//lib/prism/node.rb#3464 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # attr_reader conditions: Array[Node] + # attr_reader conditions: Array[Prism::node] # - # source://prism//lib/prism/node.rb#3600 + # source://prism//lib/prism/node.rb#3494 sig { returns(T::Array[Prism::Node]) } def conditions; end # attr_reader consequent: ElseNode? # - # source://prism//lib/prism/node.rb#3603 + # source://prism//lib/prism/node.rb#3497 sig { returns(T.nilable(Prism::ElseNode)) } def consequent; end - # def copy: (**params) -> CaseNode + # def copy: (?predicate: Prism::node?, ?conditions: Array[Prism::node], ?consequent: ElseNode?, ?case_keyword_loc: Location, ?end_keyword_loc: Location, ?location: Location) -> CaseNode # - # source://prism//lib/prism/node.rb#3576 - sig { params(params: T.untyped).returns(Prism::CaseNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#3478 + sig do + params( + predicate: T.nilable(Prism::Node), + conditions: T::Array[Prism::Node], + consequent: T.nilable(Prism::ElseNode), + case_keyword_loc: Prism::Location, + end_keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::CaseNode) + end + def copy(predicate: T.unsafe(nil), conditions: T.unsafe(nil), consequent: T.unsafe(nil), case_keyword_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3557 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3459 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { predicate: Node?, conditions: Array[Node], consequent: ElseNode?, case_keyword_loc: Location, end_keyword_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { predicate: Prism::node?, conditions: Array[Prism::node], consequent: ElseNode?, case_keyword_loc: Location, end_keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#3592 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#3486 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def end_keyword: () -> String # - # source://prism//lib/prism/node.rb#3624 + # source://prism//lib/prism/node.rb#3520 sig { returns(String) } def end_keyword; end # attr_reader end_keyword_loc: Location # - # source://prism//lib/prism/node.rb#3612 + # source://prism//lib/prism/node.rb#3507 sig { returns(Prism::Location) } def end_keyword_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#3629 + # source://prism//lib/prism/node.rb#3525 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader predicate: Node? + # attr_reader predicate: Prism::node? # - # source://prism//lib/prism/node.rb#3597 + # source://prism//lib/prism/node.rb#3491 sig { returns(T.nilable(Prism::Node)) } def predicate; end @@ -3728,7 +4267,8 @@ class Prism::CaseNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#3663 + # source://prism//lib/prism/node.rb#3559 + sig { override.returns(Symbol) } def type; end class << self @@ -3739,7 +4279,7 @@ class Prism::CaseNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#3673 + # source://prism//lib/prism/node.rb#3569 def type; end end end @@ -3749,128 +4289,156 @@ end # class Foo end # ^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#3682 +# source://prism//lib/prism/node.rb#3578 class Prism::ClassNode < ::Prism::Node - # def initialize: (Array[Symbol] locals, Location class_keyword_loc, Node constant_path, Location? inheritance_operator_loc, Node? superclass, Node? body, Location end_keyword_loc, Symbol name, Location location) -> void + # def initialize: (Array[Symbol] locals, Location class_keyword_loc, Prism::node constant_path, Location? inheritance_operator_loc, Prism::node? superclass, Prism::node? body, Location end_keyword_loc, Symbol name, Location location) -> void # # @return [ClassNode] a new instance of ClassNode # - # source://prism//lib/prism/node.rb#3684 + # source://prism//lib/prism/node.rb#3580 + sig do + params( + source: Prism::Source, + locals: T::Array[Symbol], + class_keyword_loc: Prism::Location, + constant_path: Prism::Node, + inheritance_operator_loc: T.nilable(Prism::Location), + superclass: T.nilable(Prism::Node), + body: T.nilable(Prism::Node), + end_keyword_loc: Prism::Location, + name: Symbol, + location: Prism::Location + ).void + end def initialize(source, locals, class_keyword_loc, constant_path, inheritance_operator_loc, superclass, body, end_keyword_loc, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#3699 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#3595 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader body: Node? + # attr_reader body: Prism::node? # - # source://prism//lib/prism/node.rb#3774 + # source://prism//lib/prism/node.rb#3661 sig { returns(T.nilable(Prism::Node)) } def body; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3704 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3600 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def class_keyword: () -> String # - # source://prism//lib/prism/node.rb#3787 + # source://prism//lib/prism/node.rb#3675 sig { returns(String) } def class_keyword; end # attr_reader class_keyword_loc: Location # - # source://prism//lib/prism/node.rb#3750 + # source://prism//lib/prism/node.rb#3635 sig { returns(Prism::Location) } def class_keyword_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#3718 + # source://prism//lib/prism/node.rb#3614 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#3709 + # source://prism//lib/prism/node.rb#3605 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # attr_reader constant_path: Node + # attr_reader constant_path: Prism::node # - # source://prism//lib/prism/node.rb#3756 + # source://prism//lib/prism/node.rb#3642 sig { returns(Prism::Node) } def constant_path; end - # def copy: (**params) -> ClassNode + # def copy: (?locals: Array[Symbol], ?class_keyword_loc: Location, ?constant_path: Prism::node, ?inheritance_operator_loc: Location?, ?superclass: Prism::node?, ?body: Prism::node?, ?end_keyword_loc: Location, ?name: Symbol, ?location: Location) -> ClassNode # - # source://prism//lib/prism/node.rb#3723 - sig { params(params: T.untyped).returns(Prism::ClassNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#3619 + sig do + params( + locals: T::Array[Symbol], + class_keyword_loc: Prism::Location, + constant_path: Prism::Node, + inheritance_operator_loc: T.nilable(Prism::Location), + superclass: T.nilable(Prism::Node), + body: T.nilable(Prism::Node), + end_keyword_loc: Prism::Location, + name: Symbol, + location: Prism::Location + ).returns(Prism::ClassNode) + end + def copy(locals: T.unsafe(nil), class_keyword_loc: T.unsafe(nil), constant_path: T.unsafe(nil), inheritance_operator_loc: T.unsafe(nil), superclass: T.unsafe(nil), body: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3704 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3600 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], class_keyword_loc: Location, constant_path: Node, inheritance_operator_loc: Location?, superclass: Node?, body: Node?, end_keyword_loc: Location, name: Symbol, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], class_keyword_loc: Location, constant_path: Prism::node, inheritance_operator_loc: Location?, superclass: Prism::node?, body: Prism::node?, end_keyword_loc: Location, name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#3742 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#3627 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def end_keyword: () -> String # - # source://prism//lib/prism/node.rb#3797 + # source://prism//lib/prism/node.rb#3685 sig { returns(String) } def end_keyword; end # attr_reader end_keyword_loc: Location # - # source://prism//lib/prism/node.rb#3777 + # source://prism//lib/prism/node.rb#3664 sig { returns(Prism::Location) } def end_keyword_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inheritance_operator: () -> String? # - # source://prism//lib/prism/node.rb#3792 + # source://prism//lib/prism/node.rb#3680 sig { returns(T.nilable(String)) } def inheritance_operator; end # attr_reader inheritance_operator_loc: Location? # - # source://prism//lib/prism/node.rb#3759 + # source://prism//lib/prism/node.rb#3645 sig { returns(T.nilable(Prism::Location)) } def inheritance_operator_loc; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#3802 + # source://prism//lib/prism/node.rb#3690 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader locals: Array[Symbol] # - # source://prism//lib/prism/node.rb#3747 + # source://prism//lib/prism/node.rb#3632 sig { returns(T::Array[Symbol]) } def locals; end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#3783 + # source://prism//lib/prism/node.rb#3671 sig { returns(Symbol) } def name; end - # attr_reader superclass: Node? + # attr_reader superclass: Prism::node? # - # source://prism//lib/prism/node.rb#3771 + # source://prism//lib/prism/node.rb#3658 sig { returns(T.nilable(Prism::Node)) } def superclass; end @@ -3889,7 +4457,8 @@ class Prism::ClassNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#3840 + # source://prism//lib/prism/node.rb#3728 + sig { override.returns(Symbol) } def type; end class << self @@ -3900,7 +4469,7 @@ class Prism::ClassNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#3850 + # source://prism//lib/prism/node.rb#3738 def type; end end end @@ -3910,89 +4479,109 @@ end # @@target &&= value # ^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#3859 +# source://prism//lib/prism/node.rb#3747 class Prism::ClassVariableAndWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void # # @return [ClassVariableAndWriteNode] a new instance of ClassVariableAndWriteNode # - # source://prism//lib/prism/node.rb#3861 + # source://prism//lib/prism/node.rb#3749 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#3872 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#3760 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3877 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3765 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#3887 + # source://prism//lib/prism/node.rb#3775 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#3882 + # source://prism//lib/prism/node.rb#3770 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ClassVariableAndWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> ClassVariableAndWriteNode # - # source://prism//lib/prism/node.rb#3892 - sig { params(params: T.untyped).returns(Prism::ClassVariableAndWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#3780 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::ClassVariableAndWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3877 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3765 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#3907 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#3788 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#125 + # source://prism//lib/prism/desugar_compiler.rb#127 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#3936 + # source://prism//lib/prism/node.rb#3819 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#3912 + # source://prism//lib/prism/node.rb#3793 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#3915 + # source://prism//lib/prism/node.rb#3796 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#3931 + # source://prism//lib/prism/node.rb#3814 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#3921 + # source://prism//lib/prism/node.rb#3803 sig { returns(Prism::Location) } def operator_loc; end @@ -4011,12 +4600,13 @@ class Prism::ClassVariableAndWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#3960 + # source://prism//lib/prism/node.rb#3843 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#3927 + # source://prism//lib/prism/node.rb#3810 sig { returns(Prism::Node) } def value; end @@ -4028,7 +4618,7 @@ class Prism::ClassVariableAndWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#3970 + # source://prism//lib/prism/node.rb#3853 def type; end end end @@ -4038,89 +4628,111 @@ end # @@target += value # ^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#3979 +# source://prism//lib/prism/node.rb#3862 class Prism::ClassVariableOperatorWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Symbol operator, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Symbol operator, Location location) -> void # # @return [ClassVariableOperatorWriteNode] a new instance of ClassVariableOperatorWriteNode # - # source://prism//lib/prism/node.rb#3981 + # source://prism//lib/prism/node.rb#3864 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + operator: Symbol, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, operator, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#3993 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#3876 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3998 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3881 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#4008 + # source://prism//lib/prism/node.rb#3891 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#4003 + # source://prism//lib/prism/node.rb#3886 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ClassVariableOperatorWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?operator: Symbol, ?location: Location) -> ClassVariableOperatorWriteNode # - # source://prism//lib/prism/node.rb#4013 - sig { params(params: T.untyped).returns(Prism::ClassVariableOperatorWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#3896 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + operator: Symbol, + location: Prism::Location + ).returns(Prism::ClassVariableOperatorWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), operator: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#3998 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3881 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, operator: Symbol, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, operator: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#4029 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#3904 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#137 + # source://prism//lib/prism/desugar_compiler.rb#139 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#4056 + # source://prism//lib/prism/node.rb#3933 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#4034 + # source://prism//lib/prism/node.rb#3909 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#4037 + # source://prism//lib/prism/node.rb#3912 sig { returns(Prism::Location) } def name_loc; end # attr_reader operator: Symbol # - # source://prism//lib/prism/node.rb#4052 + # source://prism//lib/prism/node.rb#3929 sig { returns(Symbol) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#4043 + # source://prism//lib/prism/node.rb#3919 sig { returns(Prism::Location) } def operator_loc; end @@ -4139,12 +4751,13 @@ class Prism::ClassVariableOperatorWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#4081 + # source://prism//lib/prism/node.rb#3958 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#4049 + # source://prism//lib/prism/node.rb#3926 sig { returns(Prism::Node) } def value; end @@ -4156,7 +4769,7 @@ class Prism::ClassVariableOperatorWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#4091 + # source://prism//lib/prism/node.rb#3968 def type; end end end @@ -4166,89 +4779,109 @@ end # @@target ||= value # ^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#4100 +# source://prism//lib/prism/node.rb#3977 class Prism::ClassVariableOrWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void # # @return [ClassVariableOrWriteNode] a new instance of ClassVariableOrWriteNode # - # source://prism//lib/prism/node.rb#4102 + # source://prism//lib/prism/node.rb#3979 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#4113 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#3990 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4118 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3995 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#4128 + # source://prism//lib/prism/node.rb#4005 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#4123 + # source://prism//lib/prism/node.rb#4000 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ClassVariableOrWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> ClassVariableOrWriteNode # - # source://prism//lib/prism/node.rb#4133 - sig { params(params: T.untyped).returns(Prism::ClassVariableOrWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#4010 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::ClassVariableOrWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4118 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#3995 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#4148 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#4018 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#131 + # source://prism//lib/prism/desugar_compiler.rb#133 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#4177 + # source://prism//lib/prism/node.rb#4049 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#4153 + # source://prism//lib/prism/node.rb#4023 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#4156 + # source://prism//lib/prism/node.rb#4026 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#4172 + # source://prism//lib/prism/node.rb#4044 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#4162 + # source://prism//lib/prism/node.rb#4033 sig { returns(Prism::Location) } def operator_loc; end @@ -4267,12 +4900,13 @@ class Prism::ClassVariableOrWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#4201 + # source://prism//lib/prism/node.rb#4073 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#4168 + # source://prism//lib/prism/node.rb#4040 sig { returns(Prism::Node) } def value; end @@ -4284,7 +4918,7 @@ class Prism::ClassVariableOrWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#4211 + # source://prism//lib/prism/node.rb#4083 def type; end end end @@ -4294,63 +4928,66 @@ end # @@foo # ^^^^^ # -# source://prism//lib/prism/node.rb#4220 +# source://prism//lib/prism/node.rb#4092 class Prism::ClassVariableReadNode < ::Prism::Node # def initialize: (Symbol name, Location location) -> void # # @return [ClassVariableReadNode] a new instance of ClassVariableReadNode # - # source://prism//lib/prism/node.rb#4222 + # source://prism//lib/prism/node.rb#4094 + sig { params(source: Prism::Source, name: Symbol, location: Prism::Location).void } def initialize(source, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#4230 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#4102 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4235 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4107 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#4245 + # source://prism//lib/prism/node.rb#4117 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#4240 + # source://prism//lib/prism/node.rb#4112 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ClassVariableReadNode + # def copy: (?name: Symbol, ?location: Location) -> ClassVariableReadNode # - # source://prism//lib/prism/node.rb#4250 - sig { params(params: T.untyped).returns(Prism::ClassVariableReadNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#4122 + sig { params(name: Symbol, location: Prism::Location).returns(Prism::ClassVariableReadNode) } + def copy(name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4235 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4107 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#4262 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#4130 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#4275 + # source://prism//lib/prism/node.rb#4143 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # The name of the class variable, which is a `@@` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers). @@ -4359,7 +4996,7 @@ class Prism::ClassVariableReadNode < ::Prism::Node # # @@_test # name `:@@_test` # - # source://prism//lib/prism/node.rb#4271 + # source://prism//lib/prism/node.rb#4139 sig { returns(Symbol) } def name; end @@ -4378,7 +5015,8 @@ class Prism::ClassVariableReadNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#4295 + # source://prism//lib/prism/node.rb#4163 + sig { override.returns(Symbol) } def type; end class << self @@ -4389,7 +5027,7 @@ class Prism::ClassVariableReadNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#4305 + # source://prism//lib/prism/node.rb#4173 def type; end end end @@ -4399,68 +5037,71 @@ end # @@foo, @@bar = baz # ^^^^^ ^^^^^ # -# source://prism//lib/prism/node.rb#4314 +# source://prism//lib/prism/node.rb#4182 class Prism::ClassVariableTargetNode < ::Prism::Node # def initialize: (Symbol name, Location location) -> void # # @return [ClassVariableTargetNode] a new instance of ClassVariableTargetNode # - # source://prism//lib/prism/node.rb#4316 + # source://prism//lib/prism/node.rb#4184 + sig { params(source: Prism::Source, name: Symbol, location: Prism::Location).void } def initialize(source, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#4324 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#4192 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4329 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4197 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#4339 + # source://prism//lib/prism/node.rb#4207 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#4334 + # source://prism//lib/prism/node.rb#4202 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ClassVariableTargetNode + # def copy: (?name: Symbol, ?location: Location) -> ClassVariableTargetNode # - # source://prism//lib/prism/node.rb#4344 - sig { params(params: T.untyped).returns(Prism::ClassVariableTargetNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#4212 + sig { params(name: Symbol, location: Prism::Location).returns(Prism::ClassVariableTargetNode) } + def copy(name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4329 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4197 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#4356 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#4220 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#4365 + # source://prism//lib/prism/node.rb#4229 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#4361 + # source://prism//lib/prism/node.rb#4225 sig { returns(Symbol) } def name; end @@ -4479,7 +5120,8 @@ class Prism::ClassVariableTargetNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#4385 + # source://prism//lib/prism/node.rb#4249 + sig { override.returns(Symbol) } def type; end class << self @@ -4490,7 +5132,7 @@ class Prism::ClassVariableTargetNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#4395 + # source://prism//lib/prism/node.rb#4259 def type; end end end @@ -4500,87 +5142,117 @@ end # @@foo = 1 # ^^^^^^^^^ # -# source://prism//lib/prism/node.rb#4404 +# source://prism//lib/prism/node.rb#4268 class Prism::ClassVariableWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Node value, Location? operator_loc, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Prism::node value, Location operator_loc, Location location) -> void # # @return [ClassVariableWriteNode] a new instance of ClassVariableWriteNode # - # source://prism//lib/prism/node.rb#4406 + # source://prism//lib/prism/node.rb#4270 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + value: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, value, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#4417 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#4281 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4422 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4286 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#4432 + # source://prism//lib/prism/node.rb#4296 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#4427 + # source://prism//lib/prism/node.rb#4291 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ClassVariableWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?value: Prism::node, ?operator_loc: Location, ?location: Location) -> ClassVariableWriteNode # - # source://prism//lib/prism/node.rb#4437 - sig { params(params: T.untyped).returns(Prism::ClassVariableWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#4301 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + value: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::ClassVariableWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4422 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4286 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, value: Node, operator_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, value: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#4452 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#4309 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#4487 + # source://prism//lib/prism/node.rb#4357 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader name: Symbol + # The name of the class variable, which is a `@@` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers). + # + # @@abc = 123 # name `@@abc` + # + # @@_test = :test # name `@@_test` # - # source://prism//lib/prism/node.rb#4457 + # source://prism//lib/prism/node.rb#4318 sig { returns(Symbol) } def name; end - # attr_reader name_loc: Location + # The location of the variable name. + # + # @@foo = :bar + # ^^^^^ # - # source://prism//lib/prism/node.rb#4460 + # source://prism//lib/prism/node.rb#4324 sig { returns(Prism::Location) } def name_loc; end - # def operator: () -> String? + # def operator: () -> String # - # source://prism//lib/prism/node.rb#4482 - sig { returns(T.nilable(String)) } + # source://prism//lib/prism/node.rb#4352 + sig { returns(String) } def operator; end - # attr_reader operator_loc: Location? + # The location of the `=` operator. # - # source://prism//lib/prism/node.rb#4469 - sig { returns(T.nilable(Prism::Location)) } + # @@foo = :bar + # ^ + # + # source://prism//lib/prism/node.rb#4344 + sig { returns(Prism::Location) } def operator_loc; end # Sometimes you want to check an instance of a node against a list of @@ -4598,12 +5270,20 @@ class Prism::ClassVariableWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#4511 + # source://prism//lib/prism/node.rb#4381 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # The value to assign to the class variable. Can be any node that + # represents a non-void expression. + # + # @@foo = :bar + # ^^^^ + # + # @@_xyz = 123 + # ^^^ # - # source://prism//lib/prism/node.rb#4466 + # source://prism//lib/prism/node.rb#4338 sig { returns(Prism::Node) } def value; end @@ -4615,7 +5295,7 @@ class Prism::ClassVariableWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#4521 + # source://prism//lib/prism/node.rb#4391 def type; end end end @@ -4623,27 +5303,36 @@ end # This represents a comment that was encountered during parsing. It is the # base class for all comment types. # -# source://prism//lib/prism/parse_result.rb#258 +# source://prism//lib/prism/parse_result.rb#288 class Prism::Comment + abstract! + # Create a new comment object with the given location. # # @return [Comment] a new instance of Comment # - # source://prism//lib/prism/parse_result.rb#263 + # source://prism//lib/prism/parse_result.rb#293 + sig { params(location: Prism::Location).void } def initialize(location); end # Implement the hash pattern matching interface for Comment. # - # source://prism//lib/prism/parse_result.rb#268 + # source://prism//lib/prism/parse_result.rb#298 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # The location of this comment in the source. # - # source://prism//lib/prism/parse_result.rb#260 - sig { returns(Prism::Location) } + # source://prism//lib/prism/parse_result.rb#290 def location; end - sig { returns(T::Boolean) } + # Returns the content of the comment by slicing it from the source code. + # + # source://prism//lib/prism/parse_result.rb#303 + sig { returns(String) } + def slice; end + + sig { abstract.returns(T::Boolean) } def trailing?; end end @@ -4664,910 +5353,927 @@ end # Prism.parse("1 + 2").value.accept(SExpressions.new) # # => [:program, [[[:call, [[:integer], [:arguments, [[:integer]]]]]]]] # -# source://prism//lib/prism/compiler.rb#26 -class Prism::Compiler +# source://prism//lib/prism/compiler.rb#27 +class Prism::Compiler < ::Prism::Visitor # Visit an individual node. # - # source://prism//lib/prism/compiler.rb#28 + # source://prism//lib/prism/compiler.rb#29 + sig { params(node: T.nilable(Prism::Node)).returns(T.nilable(Result)) } def visit(node); end # Visit the child nodes of the given node. # Compile a AliasGlobalVariableNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_alias_global_variable_node(node); end # Visit the child nodes of the given node. # Compile a AliasMethodNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_alias_method_node(node); end # Visit a list of nodes. # - # source://prism//lib/prism/compiler.rb#33 + # source://prism//lib/prism/compiler.rb#34 + sig { params(nodes: T::Array[T.nilable(Prism::Node)]).returns(T::Array[T.nilable(Result)]) } def visit_all(nodes); end # Visit the child nodes of the given node. # Compile a AlternationPatternNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_alternation_pattern_node(node); end # Visit the child nodes of the given node. # Compile a AndNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_and_node(node); end # Visit the child nodes of the given node. # Compile a ArgumentsNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_arguments_node(node); end # Visit the child nodes of the given node. # Compile a ArrayNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_array_node(node); end # Visit the child nodes of the given node. # Compile a ArrayPatternNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_array_pattern_node(node); end # Visit the child nodes of the given node. # Compile a AssocNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_assoc_node(node); end # Visit the child nodes of the given node. # Compile a AssocSplatNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_assoc_splat_node(node); end # Visit the child nodes of the given node. # Compile a BackReferenceReadNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_back_reference_read_node(node); end # Visit the child nodes of the given node. # Compile a BeginNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_begin_node(node); end # Visit the child nodes of the given node. # Compile a BlockArgumentNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_block_argument_node(node); end # Visit the child nodes of the given node. # Compile a BlockLocalVariableNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_block_local_variable_node(node); end # Visit the child nodes of the given node. # Compile a BlockNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_block_node(node); end # Visit the child nodes of the given node. # Compile a BlockParameterNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_block_parameter_node(node); end # Visit the child nodes of the given node. # Compile a BlockParametersNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_block_parameters_node(node); end # Visit the child nodes of the given node. # Compile a BreakNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_break_node(node); end # Visit the child nodes of the given node. # Compile a CallAndWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_call_and_write_node(node); end # Visit the child nodes of the given node. # Compile a CallNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_call_node(node); end # Visit the child nodes of the given node. # Compile a CallOperatorWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_call_operator_write_node(node); end # Visit the child nodes of the given node. # Compile a CallOrWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_call_or_write_node(node); end # Visit the child nodes of the given node. # Compile a CallTargetNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_call_target_node(node); end # Visit the child nodes of the given node. # Compile a CapturePatternNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_capture_pattern_node(node); end # Visit the child nodes of the given node. # Compile a CaseMatchNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_case_match_node(node); end # Visit the child nodes of the given node. # Compile a CaseNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_case_node(node); end # Visit the child nodes of the given node. # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 + sig { params(node: Prism::Node).returns(T::Array[T.nilable(Result)]) } def visit_child_nodes(node); end # Visit the child nodes of the given node. # Compile a ClassNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_class_node(node); end # Visit the child nodes of the given node. # Compile a ClassVariableAndWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_class_variable_and_write_node(node); end # Visit the child nodes of the given node. # Compile a ClassVariableOperatorWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_class_variable_operator_write_node(node); end # Visit the child nodes of the given node. # Compile a ClassVariableOrWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_class_variable_or_write_node(node); end # Visit the child nodes of the given node. # Compile a ClassVariableReadNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_class_variable_read_node(node); end # Visit the child nodes of the given node. # Compile a ClassVariableTargetNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_class_variable_target_node(node); end # Visit the child nodes of the given node. # Compile a ClassVariableWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_class_variable_write_node(node); end # Visit the child nodes of the given node. # Compile a ConstantAndWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_and_write_node(node); end # Visit the child nodes of the given node. # Compile a ConstantOperatorWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_operator_write_node(node); end # Visit the child nodes of the given node. # Compile a ConstantOrWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_or_write_node(node); end # Visit the child nodes of the given node. # Compile a ConstantPathAndWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_path_and_write_node(node); end # Visit the child nodes of the given node. # Compile a ConstantPathNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_path_node(node); end # Visit the child nodes of the given node. # Compile a ConstantPathOperatorWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_path_operator_write_node(node); end # Visit the child nodes of the given node. # Compile a ConstantPathOrWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_path_or_write_node(node); end # Visit the child nodes of the given node. # Compile a ConstantPathTargetNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_path_target_node(node); end # Visit the child nodes of the given node. # Compile a ConstantPathWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_path_write_node(node); end # Visit the child nodes of the given node. # Compile a ConstantReadNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_read_node(node); end # Visit the child nodes of the given node. # Compile a ConstantTargetNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_target_node(node); end # Visit the child nodes of the given node. # Compile a ConstantWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_constant_write_node(node); end # Visit the child nodes of the given node. # Compile a DefNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_def_node(node); end # Visit the child nodes of the given node. # Compile a DefinedNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_defined_node(node); end # Visit the child nodes of the given node. # Compile a ElseNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_else_node(node); end # Visit the child nodes of the given node. # Compile a EmbeddedStatementsNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_embedded_statements_node(node); end # Visit the child nodes of the given node. # Compile a EmbeddedVariableNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_embedded_variable_node(node); end # Visit the child nodes of the given node. # Compile a EnsureNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_ensure_node(node); end # Visit the child nodes of the given node. # Compile a FalseNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_false_node(node); end # Visit the child nodes of the given node. # Compile a FindPatternNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_find_pattern_node(node); end # Visit the child nodes of the given node. # Compile a FlipFlopNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_flip_flop_node(node); end # Visit the child nodes of the given node. # Compile a FloatNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_float_node(node); end # Visit the child nodes of the given node. # Compile a ForNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_for_node(node); end # Visit the child nodes of the given node. # Compile a ForwardingArgumentsNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_forwarding_arguments_node(node); end # Visit the child nodes of the given node. # Compile a ForwardingParameterNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_forwarding_parameter_node(node); end # Visit the child nodes of the given node. # Compile a ForwardingSuperNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_forwarding_super_node(node); end # Visit the child nodes of the given node. # Compile a GlobalVariableAndWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_global_variable_and_write_node(node); end # Visit the child nodes of the given node. # Compile a GlobalVariableOperatorWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_global_variable_operator_write_node(node); end # Visit the child nodes of the given node. # Compile a GlobalVariableOrWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_global_variable_or_write_node(node); end # Visit the child nodes of the given node. # Compile a GlobalVariableReadNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_global_variable_read_node(node); end # Visit the child nodes of the given node. # Compile a GlobalVariableTargetNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_global_variable_target_node(node); end # Visit the child nodes of the given node. # Compile a GlobalVariableWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_global_variable_write_node(node); end # Visit the child nodes of the given node. # Compile a HashNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_hash_node(node); end # Visit the child nodes of the given node. # Compile a HashPatternNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_hash_pattern_node(node); end # Visit the child nodes of the given node. # Compile a IfNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_if_node(node); end # Visit the child nodes of the given node. # Compile a ImaginaryNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_imaginary_node(node); end # Visit the child nodes of the given node. # Compile a ImplicitNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_implicit_node(node); end # Visit the child nodes of the given node. # Compile a ImplicitRestNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_implicit_rest_node(node); end # Visit the child nodes of the given node. # Compile a InNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_in_node(node); end # Visit the child nodes of the given node. # Compile a IndexAndWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_index_and_write_node(node); end # Visit the child nodes of the given node. # Compile a IndexOperatorWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_index_operator_write_node(node); end # Visit the child nodes of the given node. # Compile a IndexOrWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_index_or_write_node(node); end # Visit the child nodes of the given node. # Compile a IndexTargetNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_index_target_node(node); end # Visit the child nodes of the given node. # Compile a InstanceVariableAndWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_instance_variable_and_write_node(node); end # Visit the child nodes of the given node. # Compile a InstanceVariableOperatorWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_instance_variable_operator_write_node(node); end # Visit the child nodes of the given node. # Compile a InstanceVariableOrWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_instance_variable_or_write_node(node); end # Visit the child nodes of the given node. # Compile a InstanceVariableReadNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_instance_variable_read_node(node); end # Visit the child nodes of the given node. # Compile a InstanceVariableTargetNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_instance_variable_target_node(node); end # Visit the child nodes of the given node. # Compile a InstanceVariableWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_instance_variable_write_node(node); end # Visit the child nodes of the given node. # Compile a IntegerNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_integer_node(node); end # Visit the child nodes of the given node. # Compile a InterpolatedMatchLastLineNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_interpolated_match_last_line_node(node); end # Visit the child nodes of the given node. # Compile a InterpolatedRegularExpressionNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_interpolated_regular_expression_node(node); end # Visit the child nodes of the given node. # Compile a InterpolatedStringNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_interpolated_string_node(node); end # Visit the child nodes of the given node. # Compile a InterpolatedSymbolNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_interpolated_symbol_node(node); end # Visit the child nodes of the given node. # Compile a InterpolatedXStringNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_interpolated_x_string_node(node); end + # Visit the child nodes of the given node. + # Compile a ItParametersNode node + # + # source://prism//lib/prism/compiler.rb#39 + def visit_it_parameters_node(node); end + # Visit the child nodes of the given node. # Compile a KeywordHashNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_keyword_hash_node(node); end # Visit the child nodes of the given node. # Compile a KeywordRestParameterNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_keyword_rest_parameter_node(node); end # Visit the child nodes of the given node. # Compile a LambdaNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_lambda_node(node); end # Visit the child nodes of the given node. # Compile a LocalVariableAndWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_local_variable_and_write_node(node); end # Visit the child nodes of the given node. # Compile a LocalVariableOperatorWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_local_variable_operator_write_node(node); end # Visit the child nodes of the given node. # Compile a LocalVariableOrWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_local_variable_or_write_node(node); end # Visit the child nodes of the given node. # Compile a LocalVariableReadNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_local_variable_read_node(node); end # Visit the child nodes of the given node. # Compile a LocalVariableTargetNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_local_variable_target_node(node); end # Visit the child nodes of the given node. # Compile a LocalVariableWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_local_variable_write_node(node); end # Visit the child nodes of the given node. # Compile a MatchLastLineNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_match_last_line_node(node); end # Visit the child nodes of the given node. # Compile a MatchPredicateNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_match_predicate_node(node); end # Visit the child nodes of the given node. # Compile a MatchRequiredNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_match_required_node(node); end # Visit the child nodes of the given node. # Compile a MatchWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_match_write_node(node); end # Visit the child nodes of the given node. # Compile a MissingNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_missing_node(node); end # Visit the child nodes of the given node. # Compile a ModuleNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_module_node(node); end # Visit the child nodes of the given node. # Compile a MultiTargetNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_multi_target_node(node); end # Visit the child nodes of the given node. # Compile a MultiWriteNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_multi_write_node(node); end # Visit the child nodes of the given node. # Compile a NextNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_next_node(node); end # Visit the child nodes of the given node. # Compile a NilNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_nil_node(node); end # Visit the child nodes of the given node. # Compile a NoKeywordsParameterNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_no_keywords_parameter_node(node); end # Visit the child nodes of the given node. # Compile a NumberedParametersNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_numbered_parameters_node(node); end # Visit the child nodes of the given node. # Compile a NumberedReferenceReadNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_numbered_reference_read_node(node); end # Visit the child nodes of the given node. # Compile a OptionalKeywordParameterNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_optional_keyword_parameter_node(node); end # Visit the child nodes of the given node. # Compile a OptionalParameterNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_optional_parameter_node(node); end # Visit the child nodes of the given node. # Compile a OrNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_or_node(node); end # Visit the child nodes of the given node. # Compile a ParametersNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_parameters_node(node); end # Visit the child nodes of the given node. # Compile a ParenthesesNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_parentheses_node(node); end # Visit the child nodes of the given node. # Compile a PinnedExpressionNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_pinned_expression_node(node); end # Visit the child nodes of the given node. # Compile a PinnedVariableNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_pinned_variable_node(node); end # Visit the child nodes of the given node. # Compile a PostExecutionNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_post_execution_node(node); end # Visit the child nodes of the given node. # Compile a PreExecutionNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_pre_execution_node(node); end # Visit the child nodes of the given node. # Compile a ProgramNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_program_node(node); end # Visit the child nodes of the given node. # Compile a RangeNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_range_node(node); end # Visit the child nodes of the given node. # Compile a RationalNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_rational_node(node); end # Visit the child nodes of the given node. # Compile a RedoNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_redo_node(node); end # Visit the child nodes of the given node. # Compile a RegularExpressionNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_regular_expression_node(node); end # Visit the child nodes of the given node. # Compile a RequiredKeywordParameterNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_required_keyword_parameter_node(node); end # Visit the child nodes of the given node. # Compile a RequiredParameterNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_required_parameter_node(node); end # Visit the child nodes of the given node. # Compile a RescueModifierNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_rescue_modifier_node(node); end # Visit the child nodes of the given node. # Compile a RescueNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_rescue_node(node); end # Visit the child nodes of the given node. # Compile a RestParameterNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_rest_parameter_node(node); end # Visit the child nodes of the given node. # Compile a RetryNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_retry_node(node); end # Visit the child nodes of the given node. # Compile a ReturnNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_return_node(node); end # Visit the child nodes of the given node. # Compile a SelfNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_self_node(node); end + # Visit the child nodes of the given node. + # Compile a ShareableConstantNode node + # + # source://prism//lib/prism/compiler.rb#39 + def visit_shareable_constant_node(node); end + # Visit the child nodes of the given node. # Compile a SingletonClassNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_singleton_class_node(node); end # Visit the child nodes of the given node. # Compile a SourceEncodingNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_source_encoding_node(node); end # Visit the child nodes of the given node. # Compile a SourceFileNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_source_file_node(node); end # Visit the child nodes of the given node. # Compile a SourceLineNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_source_line_node(node); end # Visit the child nodes of the given node. # Compile a SplatNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_splat_node(node); end # Visit the child nodes of the given node. # Compile a StatementsNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_statements_node(node); end # Visit the child nodes of the given node. # Compile a StringNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_string_node(node); end # Visit the child nodes of the given node. # Compile a SuperNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_super_node(node); end # Visit the child nodes of the given node. # Compile a SymbolNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_symbol_node(node); end # Visit the child nodes of the given node. # Compile a TrueNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_true_node(node); end # Visit the child nodes of the given node. # Compile a UndefNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_undef_node(node); end # Visit the child nodes of the given node. # Compile a UnlessNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_unless_node(node); end # Visit the child nodes of the given node. # Compile a UntilNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_until_node(node); end # Visit the child nodes of the given node. # Compile a WhenNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_when_node(node); end # Visit the child nodes of the given node. # Compile a WhileNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_while_node(node); end # Visit the child nodes of the given node. # Compile a XStringNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_x_string_node(node); end # Visit the child nodes of the given node. # Compile a YieldNode node # - # source://prism//lib/prism/compiler.rb#38 + # source://prism//lib/prism/compiler.rb#39 def visit_yield_node(node); end + + Result = type_member end # Represents the use of the `&&=` operator for assignment to a constant. @@ -5575,89 +6281,109 @@ end # Target &&= value # ^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#4530 +# source://prism//lib/prism/node.rb#4400 class Prism::ConstantAndWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void # # @return [ConstantAndWriteNode] a new instance of ConstantAndWriteNode # - # source://prism//lib/prism/node.rb#4532 + # source://prism//lib/prism/node.rb#4402 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#4543 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#4413 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4548 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4418 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#4558 + # source://prism//lib/prism/node.rb#4428 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#4553 + # source://prism//lib/prism/node.rb#4423 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantAndWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> ConstantAndWriteNode # - # source://prism//lib/prism/node.rb#4563 - sig { params(params: T.untyped).returns(Prism::ConstantAndWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#4433 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::ConstantAndWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4548 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4418 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#4578 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#4441 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#143 + # source://prism//lib/prism/desugar_compiler.rb#145 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#4607 + # source://prism//lib/prism/node.rb#4472 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#4583 + # source://prism//lib/prism/node.rb#4446 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#4586 + # source://prism//lib/prism/node.rb#4449 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#4602 + # source://prism//lib/prism/node.rb#4467 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#4592 + # source://prism//lib/prism/node.rb#4456 sig { returns(Prism::Location) } def operator_loc; end @@ -5676,12 +6402,13 @@ class Prism::ConstantAndWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#4631 + # source://prism//lib/prism/node.rb#4496 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#4598 + # source://prism//lib/prism/node.rb#4463 sig { returns(Prism::Node) } def value; end @@ -5693,7 +6420,7 @@ class Prism::ConstantAndWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#4641 + # source://prism//lib/prism/node.rb#4506 def type; end end end @@ -5703,89 +6430,111 @@ end # Target += value # ^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#4650 +# source://prism//lib/prism/node.rb#4515 class Prism::ConstantOperatorWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Symbol operator, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Symbol operator, Location location) -> void # # @return [ConstantOperatorWriteNode] a new instance of ConstantOperatorWriteNode # - # source://prism//lib/prism/node.rb#4652 + # source://prism//lib/prism/node.rb#4517 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + operator: Symbol, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, operator, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#4664 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#4529 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4669 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4534 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#4679 + # source://prism//lib/prism/node.rb#4544 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#4674 + # source://prism//lib/prism/node.rb#4539 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantOperatorWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?operator: Symbol, ?location: Location) -> ConstantOperatorWriteNode # - # source://prism//lib/prism/node.rb#4684 - sig { params(params: T.untyped).returns(Prism::ConstantOperatorWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#4549 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + operator: Symbol, + location: Prism::Location + ).returns(Prism::ConstantOperatorWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), operator: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4669 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4534 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, operator: Symbol, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, operator: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#4700 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#4557 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#155 + # source://prism//lib/prism/desugar_compiler.rb#157 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#4727 + # source://prism//lib/prism/node.rb#4586 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#4705 + # source://prism//lib/prism/node.rb#4562 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#4708 + # source://prism//lib/prism/node.rb#4565 sig { returns(Prism::Location) } def name_loc; end # attr_reader operator: Symbol # - # source://prism//lib/prism/node.rb#4723 + # source://prism//lib/prism/node.rb#4582 sig { returns(Symbol) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#4714 + # source://prism//lib/prism/node.rb#4572 sig { returns(Prism::Location) } def operator_loc; end @@ -5804,12 +6553,13 @@ class Prism::ConstantOperatorWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#4752 + # source://prism//lib/prism/node.rb#4611 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#4720 + # source://prism//lib/prism/node.rb#4579 sig { returns(Prism::Node) } def value; end @@ -5821,7 +6571,7 @@ class Prism::ConstantOperatorWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#4762 + # source://prism//lib/prism/node.rb#4621 def type; end end end @@ -5831,89 +6581,109 @@ end # Target ||= value # ^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#4771 +# source://prism//lib/prism/node.rb#4630 class Prism::ConstantOrWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void # # @return [ConstantOrWriteNode] a new instance of ConstantOrWriteNode # - # source://prism//lib/prism/node.rb#4773 + # source://prism//lib/prism/node.rb#4632 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#4784 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#4643 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4789 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4648 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#4799 + # source://prism//lib/prism/node.rb#4658 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#4794 + # source://prism//lib/prism/node.rb#4653 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantOrWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> ConstantOrWriteNode # - # source://prism//lib/prism/node.rb#4804 - sig { params(params: T.untyped).returns(Prism::ConstantOrWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#4663 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::ConstantOrWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4789 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4648 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#4819 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#4671 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#149 + # source://prism//lib/prism/desugar_compiler.rb#151 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#4848 + # source://prism//lib/prism/node.rb#4702 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#4824 + # source://prism//lib/prism/node.rb#4676 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#4827 + # source://prism//lib/prism/node.rb#4679 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#4843 + # source://prism//lib/prism/node.rb#4697 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#4833 + # source://prism//lib/prism/node.rb#4686 sig { returns(Prism::Location) } def operator_loc; end @@ -5932,12 +6702,13 @@ class Prism::ConstantOrWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#4872 + # source://prism//lib/prism/node.rb#4726 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#4839 + # source://prism//lib/prism/node.rb#4693 sig { returns(Prism::Node) } def value; end @@ -5949,7 +6720,7 @@ class Prism::ConstantOrWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#4882 + # source://prism//lib/prism/node.rb#4736 def type; end end end @@ -5959,80 +6730,98 @@ end # Parent::Child &&= value # ^^^^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#4891 +# source://prism//lib/prism/node.rb#4745 class Prism::ConstantPathAndWriteNode < ::Prism::Node - # def initialize: (ConstantPathNode target, Location operator_loc, Node value, Location location) -> void + # def initialize: (ConstantPathNode target, Location operator_loc, Prism::node value, Location location) -> void # # @return [ConstantPathAndWriteNode] a new instance of ConstantPathAndWriteNode # - # source://prism//lib/prism/node.rb#4893 + # source://prism//lib/prism/node.rb#4747 + sig do + params( + source: Prism::Source, + target: Prism::ConstantPathNode, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, target, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#4903 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#4757 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4908 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4762 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#4918 + # source://prism//lib/prism/node.rb#4772 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#4913 + # source://prism//lib/prism/node.rb#4767 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantPathAndWriteNode + # def copy: (?target: ConstantPathNode, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> ConstantPathAndWriteNode # - # source://prism//lib/prism/node.rb#4923 - sig { params(params: T.untyped).returns(Prism::ConstantPathAndWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#4777 + sig do + params( + target: Prism::ConstantPathNode, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::ConstantPathAndWriteNode) + end + def copy(target: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#4908 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4762 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { target: ConstantPathNode, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { target: ConstantPathNode, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#4937 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#4785 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#4960 + # source://prism//lib/prism/node.rb#4809 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#4955 + # source://prism//lib/prism/node.rb#4804 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#4945 + # source://prism//lib/prism/node.rb#4793 sig { returns(Prism::Location) } def operator_loc; end # attr_reader target: ConstantPathNode # - # source://prism//lib/prism/node.rb#4942 + # source://prism//lib/prism/node.rb#4790 sig { returns(Prism::ConstantPathNode) } def target; end @@ -6051,12 +6840,13 @@ class Prism::ConstantPathAndWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#4984 + # source://prism//lib/prism/node.rb#4833 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#4951 + # source://prism//lib/prism/node.rb#4800 sig { returns(Prism::Node) } def value; end @@ -6068,7 +6858,7 @@ class Prism::ConstantPathAndWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#4994 + # source://prism//lib/prism/node.rb#4843 def type; end end end @@ -6078,97 +6868,117 @@ end # Foo::Bar # ^^^^^^^^ # -# source://prism//lib/prism/node.rb#5003 +# source://prism//lib/prism/node.rb#4852 class Prism::ConstantPathNode < ::Prism::Node - # def initialize: (Node? parent, Node child, Location delimiter_loc, Location location) -> void + # def initialize: (Prism::node? parent, ConstantReadNode | MissingNode child, Location delimiter_loc, Location location) -> void # # @return [ConstantPathNode] a new instance of ConstantPathNode # - # source://prism//lib/prism/node.rb#5005 + # source://prism//lib/prism/node.rb#4854 + sig do + params( + source: Prism::Source, + parent: T.nilable(Prism::Node), + child: T.any(Prism::ConstantReadNode, Prism::MissingNode), + delimiter_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, parent, child, delimiter_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#5015 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#4864 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader child: Node + # attr_reader child: ConstantReadNode | MissingNode # - # source://prism//lib/prism/node.rb#5060 - sig { returns(Prism::Node) } + # source://prism//lib/prism/node.rb#4903 + sig { returns(T.any(Prism::ConstantReadNode, Prism::MissingNode)) } def child; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5020 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4869 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#5033 + # source://prism//lib/prism/node.rb#4882 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#5025 + # source://prism//lib/prism/node.rb#4874 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantPathNode + # def copy: (?parent: Prism::node?, ?child: ConstantReadNode | MissingNode, ?delimiter_loc: Location, ?location: Location) -> ConstantPathNode # - # source://prism//lib/prism/node.rb#5038 - sig { params(params: T.untyped).returns(Prism::ConstantPathNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#4887 + sig do + params( + parent: T.nilable(Prism::Node), + child: T.any(Prism::ConstantReadNode, Prism::MissingNode), + delimiter_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::ConstantPathNode) + end + def copy(parent: T.unsafe(nil), child: T.unsafe(nil), delimiter_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5020 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4869 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { parent: Node?, child: Node, delimiter_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { parent: Prism::node?, child: ConstantReadNode | MissingNode, delimiter_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#5052 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#4895 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def delimiter: () -> String # - # source://prism//lib/prism/node.rb#5070 + # source://prism//lib/prism/node.rb#4914 sig { returns(String) } def delimiter; end # attr_reader delimiter_loc: Location # - # source://prism//lib/prism/node.rb#5063 + # source://prism//lib/prism/node.rb#4906 sig { returns(Prism::Location) } def delimiter_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # Returns the full name of this constant path. For example: "Foo::Bar" # - # source://prism//lib/prism/node_ext.rb#129 + # source://prism//lib/prism/node_ext.rb#162 + sig { returns(String) } def full_name; end # Returns the list of parts for the full name of this constant path. # For example: [:Foo, :Bar] # - # source://prism//lib/prism/node_ext.rb#112 + # source://prism//lib/prism/node_ext.rb#141 + sig { returns(T::Array[Symbol]) } def full_name_parts; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#5075 + # source://prism//lib/prism/node.rb#4919 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader parent: Node? + # attr_reader parent: Prism::node? # - # source://prism//lib/prism/node.rb#5057 + # source://prism//lib/prism/node.rb#4900 sig { returns(T.nilable(Prism::Node)) } def parent; end @@ -6187,7 +6997,8 @@ class Prism::ConstantPathNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#5103 + # source://prism//lib/prism/node.rb#4947 + sig { override.returns(Symbol) } def type; end class << self @@ -6198,7 +7009,7 @@ class Prism::ConstantPathNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#5113 + # source://prism//lib/prism/node.rb#4957 def type; end end end @@ -6210,88 +7021,115 @@ end # var::Bar::Baz -> raises because the first part of the constant path is a # local variable # -# source://prism//lib/prism/node_ext.rb#108 +# source://prism//lib/prism/node_ext.rb#132 class Prism::ConstantPathNode::DynamicPartsInConstantPathError < ::StandardError; end +# An error class raised when missing nodes are found while computing a +# constant path's full name. For example: +# Foo:: -> raises because the constant path is missing the last part +# +# source://prism//lib/prism/node_ext.rb#137 +class Prism::ConstantPathNode::MissingNodesInConstantPathError < ::StandardError; end + # Represents assigning to a constant path using an operator that isn't `=`. # # Parent::Child += value # ^^^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#5122 +# source://prism//lib/prism/node.rb#4966 class Prism::ConstantPathOperatorWriteNode < ::Prism::Node - # def initialize: (ConstantPathNode target, Location operator_loc, Node value, Symbol operator, Location location) -> void + # def initialize: (ConstantPathNode target, Location operator_loc, Prism::node value, Symbol operator, Location location) -> void # # @return [ConstantPathOperatorWriteNode] a new instance of ConstantPathOperatorWriteNode # - # source://prism//lib/prism/node.rb#5124 + # source://prism//lib/prism/node.rb#4968 + sig do + params( + source: Prism::Source, + target: Prism::ConstantPathNode, + operator_loc: Prism::Location, + value: Prism::Node, + operator: Symbol, + location: Prism::Location + ).void + end def initialize(source, target, operator_loc, value, operator, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#5135 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#4979 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5140 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4984 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#5150 + # source://prism//lib/prism/node.rb#4994 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#5145 + # source://prism//lib/prism/node.rb#4989 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantPathOperatorWriteNode + # def copy: (?target: ConstantPathNode, ?operator_loc: Location, ?value: Prism::node, ?operator: Symbol, ?location: Location) -> ConstantPathOperatorWriteNode # - # source://prism//lib/prism/node.rb#5155 - sig { params(params: T.untyped).returns(Prism::ConstantPathOperatorWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#4999 + sig do + params( + target: Prism::ConstantPathNode, + operator_loc: Prism::Location, + value: Prism::Node, + operator: Symbol, + location: Prism::Location + ).returns(Prism::ConstantPathOperatorWriteNode) + end + def copy(target: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), operator: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5140 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#4984 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { target: ConstantPathNode, operator_loc: Location, value: Node, operator: Symbol, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { target: ConstantPathNode, operator_loc: Location, value: Prism::node, operator: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#5170 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#5007 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#5191 + # source://prism//lib/prism/node.rb#5029 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader operator: Symbol # - # source://prism//lib/prism/node.rb#5187 + # source://prism//lib/prism/node.rb#5025 sig { returns(Symbol) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#5178 + # source://prism//lib/prism/node.rb#5015 sig { returns(Prism::Location) } def operator_loc; end # attr_reader target: ConstantPathNode # - # source://prism//lib/prism/node.rb#5175 + # source://prism//lib/prism/node.rb#5012 sig { returns(Prism::ConstantPathNode) } def target; end @@ -6310,12 +7148,13 @@ class Prism::ConstantPathOperatorWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#5216 + # source://prism//lib/prism/node.rb#5054 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#5184 + # source://prism//lib/prism/node.rb#5022 sig { returns(Prism::Node) } def value; end @@ -6327,7 +7166,7 @@ class Prism::ConstantPathOperatorWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#5226 + # source://prism//lib/prism/node.rb#5064 def type; end end end @@ -6337,80 +7176,98 @@ end # Parent::Child ||= value # ^^^^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#5235 +# source://prism//lib/prism/node.rb#5073 class Prism::ConstantPathOrWriteNode < ::Prism::Node - # def initialize: (ConstantPathNode target, Location operator_loc, Node value, Location location) -> void + # def initialize: (ConstantPathNode target, Location operator_loc, Prism::node value, Location location) -> void # # @return [ConstantPathOrWriteNode] a new instance of ConstantPathOrWriteNode # - # source://prism//lib/prism/node.rb#5237 + # source://prism//lib/prism/node.rb#5075 + sig do + params( + source: Prism::Source, + target: Prism::ConstantPathNode, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, target, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#5247 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#5085 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5252 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5090 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#5262 + # source://prism//lib/prism/node.rb#5100 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#5257 + # source://prism//lib/prism/node.rb#5095 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantPathOrWriteNode + # def copy: (?target: ConstantPathNode, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> ConstantPathOrWriteNode # - # source://prism//lib/prism/node.rb#5267 - sig { params(params: T.untyped).returns(Prism::ConstantPathOrWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#5105 + sig do + params( + target: Prism::ConstantPathNode, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::ConstantPathOrWriteNode) + end + def copy(target: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5252 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5090 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { target: ConstantPathNode, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { target: ConstantPathNode, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#5281 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#5113 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#5304 + # source://prism//lib/prism/node.rb#5137 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#5299 + # source://prism//lib/prism/node.rb#5132 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#5289 + # source://prism//lib/prism/node.rb#5121 sig { returns(Prism::Location) } def operator_loc; end # attr_reader target: ConstantPathNode # - # source://prism//lib/prism/node.rb#5286 + # source://prism//lib/prism/node.rb#5118 sig { returns(Prism::ConstantPathNode) } def target; end @@ -6429,12 +7286,13 @@ class Prism::ConstantPathOrWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#5328 + # source://prism//lib/prism/node.rb#5161 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#5295 + # source://prism//lib/prism/node.rb#5128 sig { returns(Prism::Node) } def value; end @@ -6446,7 +7304,7 @@ class Prism::ConstantPathOrWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#5338 + # source://prism//lib/prism/node.rb#5171 def type; end end end @@ -6456,97 +7314,117 @@ end # Foo::Foo, Bar::Bar = baz # ^^^^^^^^ ^^^^^^^^ # -# source://prism//lib/prism/node.rb#5347 +# source://prism//lib/prism/node.rb#5180 class Prism::ConstantPathTargetNode < ::Prism::Node - # def initialize: (Node? parent, Node child, Location delimiter_loc, Location location) -> void + # def initialize: (Prism::node? parent, ConstantReadNode | MissingNode child, Location delimiter_loc, Location location) -> void # # @return [ConstantPathTargetNode] a new instance of ConstantPathTargetNode # - # source://prism//lib/prism/node.rb#5349 + # source://prism//lib/prism/node.rb#5182 + sig do + params( + source: Prism::Source, + parent: T.nilable(Prism::Node), + child: T.any(Prism::ConstantReadNode, Prism::MissingNode), + delimiter_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, parent, child, delimiter_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#5359 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#5192 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader child: Node + # attr_reader child: ConstantReadNode | MissingNode # - # source://prism//lib/prism/node.rb#5404 - sig { returns(Prism::Node) } + # source://prism//lib/prism/node.rb#5231 + sig { returns(T.any(Prism::ConstantReadNode, Prism::MissingNode)) } def child; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5364 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5197 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#5377 + # source://prism//lib/prism/node.rb#5210 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#5369 + # source://prism//lib/prism/node.rb#5202 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantPathTargetNode + # def copy: (?parent: Prism::node?, ?child: ConstantReadNode | MissingNode, ?delimiter_loc: Location, ?location: Location) -> ConstantPathTargetNode # - # source://prism//lib/prism/node.rb#5382 - sig { params(params: T.untyped).returns(Prism::ConstantPathTargetNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#5215 + sig do + params( + parent: T.nilable(Prism::Node), + child: T.any(Prism::ConstantReadNode, Prism::MissingNode), + delimiter_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::ConstantPathTargetNode) + end + def copy(parent: T.unsafe(nil), child: T.unsafe(nil), delimiter_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5364 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5197 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { parent: Node?, child: Node, delimiter_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { parent: Prism::node?, child: ConstantReadNode | MissingNode, delimiter_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#5396 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#5223 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def delimiter: () -> String # - # source://prism//lib/prism/node.rb#5414 + # source://prism//lib/prism/node.rb#5242 sig { returns(String) } def delimiter; end # attr_reader delimiter_loc: Location # - # source://prism//lib/prism/node.rb#5407 + # source://prism//lib/prism/node.rb#5234 sig { returns(Prism::Location) } def delimiter_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # Returns the full name of this constant path. For example: "Foo::Bar" # - # source://prism//lib/prism/node_ext.rb#152 + # source://prism//lib/prism/node_ext.rb#190 + sig { returns(String) } def full_name; end # Returns the list of parts for the full name of this constant path. # For example: [:Foo, :Bar] # - # source://prism//lib/prism/node_ext.rb#137 + # source://prism//lib/prism/node_ext.rb#170 + sig { returns(T::Array[Symbol]) } def full_name_parts; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#5419 + # source://prism//lib/prism/node.rb#5247 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader parent: Node? + # attr_reader parent: Prism::node? # - # source://prism//lib/prism/node.rb#5401 + # source://prism//lib/prism/node.rb#5228 sig { returns(T.nilable(Prism::Node)) } def parent; end @@ -6565,7 +7443,8 @@ class Prism::ConstantPathTargetNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#5447 + # source://prism//lib/prism/node.rb#5275 + sig { override.returns(Symbol) } def type; end class << self @@ -6576,7 +7455,7 @@ class Prism::ConstantPathTargetNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#5457 + # source://prism//lib/prism/node.rb#5285 def type; end end end @@ -6592,80 +7471,98 @@ end # ::Foo::Bar = 1 # ^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#5472 +# source://prism//lib/prism/node.rb#5300 class Prism::ConstantPathWriteNode < ::Prism::Node - # def initialize: (ConstantPathNode target, Location operator_loc, Node value, Location location) -> void + # def initialize: (ConstantPathNode target, Location operator_loc, Prism::node value, Location location) -> void # # @return [ConstantPathWriteNode] a new instance of ConstantPathWriteNode # - # source://prism//lib/prism/node.rb#5474 + # source://prism//lib/prism/node.rb#5302 + sig do + params( + source: Prism::Source, + target: Prism::ConstantPathNode, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, target, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#5484 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#5312 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5489 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5317 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#5499 + # source://prism//lib/prism/node.rb#5327 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#5494 + # source://prism//lib/prism/node.rb#5322 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantPathWriteNode + # def copy: (?target: ConstantPathNode, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> ConstantPathWriteNode # - # source://prism//lib/prism/node.rb#5504 - sig { params(params: T.untyped).returns(Prism::ConstantPathWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#5332 + sig do + params( + target: Prism::ConstantPathNode, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::ConstantPathWriteNode) + end + def copy(target: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5489 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5317 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { target: ConstantPathNode, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { target: ConstantPathNode, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#5518 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#5340 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#5541 + # source://prism//lib/prism/node.rb#5364 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#5536 + # source://prism//lib/prism/node.rb#5359 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#5526 + # source://prism//lib/prism/node.rb#5348 sig { returns(Prism::Location) } def operator_loc; end # attr_reader target: ConstantPathNode # - # source://prism//lib/prism/node.rb#5523 + # source://prism//lib/prism/node.rb#5345 sig { returns(Prism::ConstantPathNode) } def target; end @@ -6684,12 +7581,13 @@ class Prism::ConstantPathWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#5565 + # source://prism//lib/prism/node.rb#5388 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#5532 + # source://prism//lib/prism/node.rb#5355 sig { returns(Prism::Node) } def value; end @@ -6701,7 +7599,7 @@ class Prism::ConstantPathWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#5575 + # source://prism//lib/prism/node.rb#5398 def type; end end end @@ -6711,74 +7609,79 @@ end # Foo # ^^^ # -# source://prism//lib/prism/node.rb#5584 +# source://prism//lib/prism/node.rb#5407 class Prism::ConstantReadNode < ::Prism::Node # def initialize: (Symbol name, Location location) -> void # # @return [ConstantReadNode] a new instance of ConstantReadNode # - # source://prism//lib/prism/node.rb#5586 + # source://prism//lib/prism/node.rb#5409 + sig { params(source: Prism::Source, name: Symbol, location: Prism::Location).void } def initialize(source, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#5594 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#5417 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5599 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5422 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#5609 + # source://prism//lib/prism/node.rb#5432 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#5604 + # source://prism//lib/prism/node.rb#5427 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantReadNode + # def copy: (?name: Symbol, ?location: Location) -> ConstantReadNode # - # source://prism//lib/prism/node.rb#5614 - sig { params(params: T.untyped).returns(Prism::ConstantReadNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#5437 + sig { params(name: Symbol, location: Prism::Location).returns(Prism::ConstantReadNode) } + def copy(name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5599 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5422 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#5626 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#5445 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # Returns the full name of this constant. For example: "Foo" # - # source://prism//lib/prism/node_ext.rb#96 + # source://prism//lib/prism/node_ext.rb#107 + sig { returns(String) } def full_name; end # Returns the list of parts for the full name of this constant. # For example: [:Foo] # - # source://prism//lib/prism/node_ext.rb#91 + # source://prism//lib/prism/node_ext.rb#102 + sig { returns(T::Array[Symbol]) } def full_name_parts; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#5639 + # source://prism//lib/prism/node.rb#5458 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # The name of the [constant](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#constants). @@ -6787,7 +7690,7 @@ class Prism::ConstantReadNode < ::Prism::Node # # SOME_CONSTANT # name `:SOME_CONSTANT` # - # source://prism//lib/prism/node.rb#5635 + # source://prism//lib/prism/node.rb#5454 sig { returns(Symbol) } def name; end @@ -6806,7 +7709,8 @@ class Prism::ConstantReadNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#5659 + # source://prism//lib/prism/node.rb#5478 + sig { override.returns(Symbol) } def type; end class << self @@ -6817,7 +7721,7 @@ class Prism::ConstantReadNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#5669 + # source://prism//lib/prism/node.rb#5488 def type; end end end @@ -6827,79 +7731,84 @@ end # Foo, Bar = baz # ^^^ ^^^ # -# source://prism//lib/prism/node.rb#5678 +# source://prism//lib/prism/node.rb#5497 class Prism::ConstantTargetNode < ::Prism::Node # def initialize: (Symbol name, Location location) -> void # # @return [ConstantTargetNode] a new instance of ConstantTargetNode # - # source://prism//lib/prism/node.rb#5680 + # source://prism//lib/prism/node.rb#5499 + sig { params(source: Prism::Source, name: Symbol, location: Prism::Location).void } def initialize(source, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#5688 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#5507 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5693 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5512 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#5703 + # source://prism//lib/prism/node.rb#5522 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#5698 + # source://prism//lib/prism/node.rb#5517 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantTargetNode + # def copy: (?name: Symbol, ?location: Location) -> ConstantTargetNode # - # source://prism//lib/prism/node.rb#5708 - sig { params(params: T.untyped).returns(Prism::ConstantTargetNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#5527 + sig { params(name: Symbol, location: Prism::Location).returns(Prism::ConstantTargetNode) } + def copy(name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5693 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5512 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#5720 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#5535 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # Returns the full name of this constant. For example: "Foo" # - # source://prism//lib/prism/node_ext.rb#165 + # source://prism//lib/prism/node_ext.rb#203 + sig { returns(String) } def full_name; end # Returns the list of parts for the full name of this constant. # For example: [:Foo] # - # source://prism//lib/prism/node_ext.rb#160 + # source://prism//lib/prism/node_ext.rb#198 + sig { returns(T::Array[Symbol]) } def full_name_parts; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#5729 + # source://prism//lib/prism/node.rb#5544 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#5725 + # source://prism//lib/prism/node.rb#5540 sig { returns(Symbol) } def name; end @@ -6918,7 +7827,8 @@ class Prism::ConstantTargetNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#5749 + # source://prism//lib/prism/node.rb#5564 + sig { override.returns(Symbol) } def type; end class << self @@ -6929,7 +7839,7 @@ class Prism::ConstantTargetNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#5759 + # source://prism//lib/prism/node.rb#5574 def type; end end end @@ -6939,86 +7849,119 @@ end # Foo = 1 # ^^^^^^^ # -# source://prism//lib/prism/node.rb#5768 +# source://prism//lib/prism/node.rb#5583 class Prism::ConstantWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Node value, Location operator_loc, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Prism::node value, Location operator_loc, Location location) -> void # # @return [ConstantWriteNode] a new instance of ConstantWriteNode # - # source://prism//lib/prism/node.rb#5770 + # source://prism//lib/prism/node.rb#5585 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + value: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, value, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#5781 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#5596 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5786 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5601 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#5796 + # source://prism//lib/prism/node.rb#5611 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#5791 + # source://prism//lib/prism/node.rb#5606 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ConstantWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?value: Prism::node, ?operator_loc: Location, ?location: Location) -> ConstantWriteNode # - # source://prism//lib/prism/node.rb#5801 - sig { params(params: T.untyped).returns(Prism::ConstantWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#5616 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + value: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::ConstantWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5786 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5601 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, value: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, value: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#5816 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#5624 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + + # Returns the full name of this constant. For example: "Foo" + # + # source://prism//lib/prism/node_ext.rb#120 + sig { returns(String) } + def full_name; end + + # Returns the list of parts for the full name of this constant. + # For example: [:Foo] + # + # source://prism//lib/prism/node_ext.rb#115 + sig { returns(T::Array[Symbol]) } + def full_name_parts; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#5845 + # source://prism//lib/prism/node.rb#5655 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#5821 + # source://prism//lib/prism/node.rb#5629 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#5824 + # source://prism//lib/prism/node.rb#5632 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#5840 + # source://prism//lib/prism/node.rb#5650 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#5833 + # source://prism//lib/prism/node.rb#5642 sig { returns(Prism::Location) } def operator_loc; end @@ -7037,12 +7980,13 @@ class Prism::ConstantWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#5869 + # source://prism//lib/prism/node.rb#5679 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#5830 + # source://prism//lib/prism/node.rb#5639 sig { returns(Prism::Node) } def value; end @@ -7054,13 +7998,11 @@ class Prism::ConstantWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#5879 + # source://prism//lib/prism/node.rb#5689 def type; end end end -class Prism::DATAComment < Prism::Comment; end - # The DSL module provides a set of methods that can be used to create prism # nodes in a more concise manner. For example, instead of writing: # @@ -7070,6 +8012,7 @@ class Prism::DATAComment < Prism::Comment; end # [ # Prism::IntegerNode.new( # Prism::IntegerBaseFlags::DECIMAL, +# 1, # Prism::Location.new(source, 1, 1), # source # ) @@ -7084,7 +8027,7 @@ class Prism::DATAComment < Prism::Comment; end # source = Prism::Source.new("[1]") # # ArrayNode( -# IntegerNode(Prism::IntegerBaseFlags::DECIMAL, Location(source, 1, 1)), source), +# IntegerNode(Prism::IntegerBaseFlags::DECIMAL, 1, Location(source, 1, 1)), source), # Location(source, 0, 1), # Location(source, 2, 1), # source @@ -7093,753 +8036,763 @@ class Prism::DATAComment < Prism::Comment; end # This is mostly helpful in the context of writing tests, but can also be used # to generate trees programmatically. # -# source://prism//lib/prism/dsl.rb#40 +# source://prism//lib/prism/dsl.rb#42 module Prism::DSL private # Create a new AliasGlobalVariableNode node # - # source://prism//lib/prism/dsl.rb#49 + # source://prism//lib/prism/dsl.rb#51 def AliasGlobalVariableNode(new_name, old_name, keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new AliasMethodNode node # - # source://prism//lib/prism/dsl.rb#54 + # source://prism//lib/prism/dsl.rb#56 def AliasMethodNode(new_name, old_name, keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new AlternationPatternNode node # - # source://prism//lib/prism/dsl.rb#59 + # source://prism//lib/prism/dsl.rb#61 def AlternationPatternNode(left, right, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new AndNode node # - # source://prism//lib/prism/dsl.rb#64 + # source://prism//lib/prism/dsl.rb#66 def AndNode(left, right, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ArgumentsNode node # - # source://prism//lib/prism/dsl.rb#69 + # source://prism//lib/prism/dsl.rb#71 def ArgumentsNode(flags, arguments, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ArrayNode node # - # source://prism//lib/prism/dsl.rb#74 + # source://prism//lib/prism/dsl.rb#76 def ArrayNode(flags, elements, opening_loc, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ArrayPatternNode node # - # source://prism//lib/prism/dsl.rb#79 + # source://prism//lib/prism/dsl.rb#81 def ArrayPatternNode(constant, requireds, rest, posts, opening_loc, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new AssocNode node # - # source://prism//lib/prism/dsl.rb#84 + # source://prism//lib/prism/dsl.rb#86 def AssocNode(key, value, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new AssocSplatNode node # - # source://prism//lib/prism/dsl.rb#89 + # source://prism//lib/prism/dsl.rb#91 def AssocSplatNode(value, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new BackReferenceReadNode node # - # source://prism//lib/prism/dsl.rb#94 + # source://prism//lib/prism/dsl.rb#96 def BackReferenceReadNode(name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new BeginNode node # - # source://prism//lib/prism/dsl.rb#99 + # source://prism//lib/prism/dsl.rb#101 def BeginNode(begin_keyword_loc, statements, rescue_clause, else_clause, ensure_clause, end_keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new BlockArgumentNode node # - # source://prism//lib/prism/dsl.rb#104 + # source://prism//lib/prism/dsl.rb#106 def BlockArgumentNode(expression, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new BlockLocalVariableNode node # - # source://prism//lib/prism/dsl.rb#109 + # source://prism//lib/prism/dsl.rb#111 def BlockLocalVariableNode(flags, name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new BlockNode node # - # source://prism//lib/prism/dsl.rb#114 + # source://prism//lib/prism/dsl.rb#116 def BlockNode(locals, parameters, body, opening_loc, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new BlockParameterNode node # - # source://prism//lib/prism/dsl.rb#119 + # source://prism//lib/prism/dsl.rb#121 def BlockParameterNode(flags, name, name_loc, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new BlockParametersNode node # - # source://prism//lib/prism/dsl.rb#124 + # source://prism//lib/prism/dsl.rb#126 def BlockParametersNode(parameters, locals, opening_loc, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new BreakNode node # - # source://prism//lib/prism/dsl.rb#129 + # source://prism//lib/prism/dsl.rb#131 def BreakNode(arguments, keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new CallAndWriteNode node # - # source://prism//lib/prism/dsl.rb#134 + # source://prism//lib/prism/dsl.rb#136 def CallAndWriteNode(flags, receiver, call_operator_loc, message_loc, read_name, write_name, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new CallNode node # - # source://prism//lib/prism/dsl.rb#139 + # source://prism//lib/prism/dsl.rb#141 def CallNode(flags, receiver, call_operator_loc, name, message_loc, opening_loc, arguments, closing_loc, block, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new CallOperatorWriteNode node # - # source://prism//lib/prism/dsl.rb#144 + # source://prism//lib/prism/dsl.rb#146 def CallOperatorWriteNode(flags, receiver, call_operator_loc, message_loc, read_name, write_name, operator, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new CallOrWriteNode node # - # source://prism//lib/prism/dsl.rb#149 + # source://prism//lib/prism/dsl.rb#151 def CallOrWriteNode(flags, receiver, call_operator_loc, message_loc, read_name, write_name, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new CallTargetNode node # - # source://prism//lib/prism/dsl.rb#154 + # source://prism//lib/prism/dsl.rb#156 def CallTargetNode(flags, receiver, call_operator_loc, name, message_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new CapturePatternNode node # - # source://prism//lib/prism/dsl.rb#159 + # source://prism//lib/prism/dsl.rb#161 def CapturePatternNode(value, target, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new CaseMatchNode node # - # source://prism//lib/prism/dsl.rb#164 + # source://prism//lib/prism/dsl.rb#166 def CaseMatchNode(predicate, conditions, consequent, case_keyword_loc, end_keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new CaseNode node # - # source://prism//lib/prism/dsl.rb#169 + # source://prism//lib/prism/dsl.rb#171 def CaseNode(predicate, conditions, consequent, case_keyword_loc, end_keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ClassNode node # - # source://prism//lib/prism/dsl.rb#174 + # source://prism//lib/prism/dsl.rb#176 def ClassNode(locals, class_keyword_loc, constant_path, inheritance_operator_loc, superclass, body, end_keyword_loc, name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ClassVariableAndWriteNode node # - # source://prism//lib/prism/dsl.rb#179 + # source://prism//lib/prism/dsl.rb#181 def ClassVariableAndWriteNode(name, name_loc, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ClassVariableOperatorWriteNode node # - # source://prism//lib/prism/dsl.rb#184 + # source://prism//lib/prism/dsl.rb#186 def ClassVariableOperatorWriteNode(name, name_loc, operator_loc, value, operator, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ClassVariableOrWriteNode node # - # source://prism//lib/prism/dsl.rb#189 + # source://prism//lib/prism/dsl.rb#191 def ClassVariableOrWriteNode(name, name_loc, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ClassVariableReadNode node # - # source://prism//lib/prism/dsl.rb#194 + # source://prism//lib/prism/dsl.rb#196 def ClassVariableReadNode(name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ClassVariableTargetNode node # - # source://prism//lib/prism/dsl.rb#199 + # source://prism//lib/prism/dsl.rb#201 def ClassVariableTargetNode(name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ClassVariableWriteNode node # - # source://prism//lib/prism/dsl.rb#204 + # source://prism//lib/prism/dsl.rb#206 def ClassVariableWriteNode(name, name_loc, value, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantAndWriteNode node # - # source://prism//lib/prism/dsl.rb#209 + # source://prism//lib/prism/dsl.rb#211 def ConstantAndWriteNode(name, name_loc, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantOperatorWriteNode node # - # source://prism//lib/prism/dsl.rb#214 + # source://prism//lib/prism/dsl.rb#216 def ConstantOperatorWriteNode(name, name_loc, operator_loc, value, operator, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantOrWriteNode node # - # source://prism//lib/prism/dsl.rb#219 + # source://prism//lib/prism/dsl.rb#221 def ConstantOrWriteNode(name, name_loc, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantPathAndWriteNode node # - # source://prism//lib/prism/dsl.rb#224 + # source://prism//lib/prism/dsl.rb#226 def ConstantPathAndWriteNode(target, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantPathNode node # - # source://prism//lib/prism/dsl.rb#229 + # source://prism//lib/prism/dsl.rb#231 def ConstantPathNode(parent, child, delimiter_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantPathOperatorWriteNode node # - # source://prism//lib/prism/dsl.rb#234 + # source://prism//lib/prism/dsl.rb#236 def ConstantPathOperatorWriteNode(target, operator_loc, value, operator, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantPathOrWriteNode node # - # source://prism//lib/prism/dsl.rb#239 + # source://prism//lib/prism/dsl.rb#241 def ConstantPathOrWriteNode(target, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantPathTargetNode node # - # source://prism//lib/prism/dsl.rb#244 + # source://prism//lib/prism/dsl.rb#246 def ConstantPathTargetNode(parent, child, delimiter_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantPathWriteNode node # - # source://prism//lib/prism/dsl.rb#249 + # source://prism//lib/prism/dsl.rb#251 def ConstantPathWriteNode(target, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantReadNode node # - # source://prism//lib/prism/dsl.rb#254 + # source://prism//lib/prism/dsl.rb#256 def ConstantReadNode(name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantTargetNode node # - # source://prism//lib/prism/dsl.rb#259 + # source://prism//lib/prism/dsl.rb#261 def ConstantTargetNode(name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ConstantWriteNode node # - # source://prism//lib/prism/dsl.rb#264 + # source://prism//lib/prism/dsl.rb#266 def ConstantWriteNode(name, name_loc, value, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new DefNode node # - # source://prism//lib/prism/dsl.rb#269 + # source://prism//lib/prism/dsl.rb#271 def DefNode(name, name_loc, receiver, parameters, body, locals, def_keyword_loc, operator_loc, lparen_loc, rparen_loc, equal_loc, end_keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new DefinedNode node # - # source://prism//lib/prism/dsl.rb#274 + # source://prism//lib/prism/dsl.rb#276 def DefinedNode(lparen_loc, value, rparen_loc, keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ElseNode node # - # source://prism//lib/prism/dsl.rb#279 + # source://prism//lib/prism/dsl.rb#281 def ElseNode(else_keyword_loc, statements, end_keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new EmbeddedStatementsNode node # - # source://prism//lib/prism/dsl.rb#284 + # source://prism//lib/prism/dsl.rb#286 def EmbeddedStatementsNode(opening_loc, statements, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new EmbeddedVariableNode node # - # source://prism//lib/prism/dsl.rb#289 + # source://prism//lib/prism/dsl.rb#291 def EmbeddedVariableNode(operator_loc, variable, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new EnsureNode node # - # source://prism//lib/prism/dsl.rb#294 + # source://prism//lib/prism/dsl.rb#296 def EnsureNode(ensure_keyword_loc, statements, end_keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new FalseNode node # - # source://prism//lib/prism/dsl.rb#299 + # source://prism//lib/prism/dsl.rb#301 def FalseNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new FindPatternNode node # - # source://prism//lib/prism/dsl.rb#304 + # source://prism//lib/prism/dsl.rb#306 def FindPatternNode(constant, left, requireds, right, opening_loc, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new FlipFlopNode node # - # source://prism//lib/prism/dsl.rb#309 + # source://prism//lib/prism/dsl.rb#311 def FlipFlopNode(flags, left, right, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new FloatNode node # - # source://prism//lib/prism/dsl.rb#314 - def FloatNode(source = T.unsafe(nil), location = T.unsafe(nil)); end + # source://prism//lib/prism/dsl.rb#316 + def FloatNode(value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ForNode node # - # source://prism//lib/prism/dsl.rb#319 + # source://prism//lib/prism/dsl.rb#321 def ForNode(index, collection, statements, for_keyword_loc, in_keyword_loc, do_keyword_loc, end_keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ForwardingArgumentsNode node # - # source://prism//lib/prism/dsl.rb#324 + # source://prism//lib/prism/dsl.rb#326 def ForwardingArgumentsNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ForwardingParameterNode node # - # source://prism//lib/prism/dsl.rb#329 + # source://prism//lib/prism/dsl.rb#331 def ForwardingParameterNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ForwardingSuperNode node # - # source://prism//lib/prism/dsl.rb#334 + # source://prism//lib/prism/dsl.rb#336 def ForwardingSuperNode(block, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new GlobalVariableAndWriteNode node # - # source://prism//lib/prism/dsl.rb#339 + # source://prism//lib/prism/dsl.rb#341 def GlobalVariableAndWriteNode(name, name_loc, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new GlobalVariableOperatorWriteNode node # - # source://prism//lib/prism/dsl.rb#344 + # source://prism//lib/prism/dsl.rb#346 def GlobalVariableOperatorWriteNode(name, name_loc, operator_loc, value, operator, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new GlobalVariableOrWriteNode node # - # source://prism//lib/prism/dsl.rb#349 + # source://prism//lib/prism/dsl.rb#351 def GlobalVariableOrWriteNode(name, name_loc, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new GlobalVariableReadNode node # - # source://prism//lib/prism/dsl.rb#354 + # source://prism//lib/prism/dsl.rb#356 def GlobalVariableReadNode(name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new GlobalVariableTargetNode node # - # source://prism//lib/prism/dsl.rb#359 + # source://prism//lib/prism/dsl.rb#361 def GlobalVariableTargetNode(name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new GlobalVariableWriteNode node # - # source://prism//lib/prism/dsl.rb#364 + # source://prism//lib/prism/dsl.rb#366 def GlobalVariableWriteNode(name, name_loc, value, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new HashNode node # - # source://prism//lib/prism/dsl.rb#369 + # source://prism//lib/prism/dsl.rb#371 def HashNode(opening_loc, elements, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new HashPatternNode node # - # source://prism//lib/prism/dsl.rb#374 + # source://prism//lib/prism/dsl.rb#376 def HashPatternNode(constant, elements, rest, opening_loc, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new IfNode node # - # source://prism//lib/prism/dsl.rb#379 + # source://prism//lib/prism/dsl.rb#381 def IfNode(if_keyword_loc, predicate, then_keyword_loc, statements, consequent, end_keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ImaginaryNode node # - # source://prism//lib/prism/dsl.rb#384 + # source://prism//lib/prism/dsl.rb#386 def ImaginaryNode(numeric, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ImplicitNode node # - # source://prism//lib/prism/dsl.rb#389 + # source://prism//lib/prism/dsl.rb#391 def ImplicitNode(value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ImplicitRestNode node # - # source://prism//lib/prism/dsl.rb#394 + # source://prism//lib/prism/dsl.rb#396 def ImplicitRestNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InNode node # - # source://prism//lib/prism/dsl.rb#399 + # source://prism//lib/prism/dsl.rb#401 def InNode(pattern, statements, in_loc, then_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new IndexAndWriteNode node # - # source://prism//lib/prism/dsl.rb#404 + # source://prism//lib/prism/dsl.rb#406 def IndexAndWriteNode(flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new IndexOperatorWriteNode node # - # source://prism//lib/prism/dsl.rb#409 + # source://prism//lib/prism/dsl.rb#411 def IndexOperatorWriteNode(flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new IndexOrWriteNode node # - # source://prism//lib/prism/dsl.rb#414 + # source://prism//lib/prism/dsl.rb#416 def IndexOrWriteNode(flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new IndexTargetNode node # - # source://prism//lib/prism/dsl.rb#419 + # source://prism//lib/prism/dsl.rb#421 def IndexTargetNode(flags, receiver, opening_loc, arguments, closing_loc, block, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InstanceVariableAndWriteNode node # - # source://prism//lib/prism/dsl.rb#424 + # source://prism//lib/prism/dsl.rb#426 def InstanceVariableAndWriteNode(name, name_loc, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InstanceVariableOperatorWriteNode node # - # source://prism//lib/prism/dsl.rb#429 + # source://prism//lib/prism/dsl.rb#431 def InstanceVariableOperatorWriteNode(name, name_loc, operator_loc, value, operator, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InstanceVariableOrWriteNode node # - # source://prism//lib/prism/dsl.rb#434 + # source://prism//lib/prism/dsl.rb#436 def InstanceVariableOrWriteNode(name, name_loc, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InstanceVariableReadNode node # - # source://prism//lib/prism/dsl.rb#439 + # source://prism//lib/prism/dsl.rb#441 def InstanceVariableReadNode(name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InstanceVariableTargetNode node # - # source://prism//lib/prism/dsl.rb#444 + # source://prism//lib/prism/dsl.rb#446 def InstanceVariableTargetNode(name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InstanceVariableWriteNode node # - # source://prism//lib/prism/dsl.rb#449 + # source://prism//lib/prism/dsl.rb#451 def InstanceVariableWriteNode(name, name_loc, value, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new IntegerNode node # - # source://prism//lib/prism/dsl.rb#454 - def IntegerNode(flags, source = T.unsafe(nil), location = T.unsafe(nil)); end + # source://prism//lib/prism/dsl.rb#456 + def IntegerNode(flags, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InterpolatedMatchLastLineNode node # - # source://prism//lib/prism/dsl.rb#459 + # source://prism//lib/prism/dsl.rb#461 def InterpolatedMatchLastLineNode(flags, opening_loc, parts, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InterpolatedRegularExpressionNode node # - # source://prism//lib/prism/dsl.rb#464 + # source://prism//lib/prism/dsl.rb#466 def InterpolatedRegularExpressionNode(flags, opening_loc, parts, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InterpolatedStringNode node # - # source://prism//lib/prism/dsl.rb#469 - def InterpolatedStringNode(opening_loc, parts, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end + # source://prism//lib/prism/dsl.rb#471 + def InterpolatedStringNode(flags, opening_loc, parts, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InterpolatedSymbolNode node # - # source://prism//lib/prism/dsl.rb#474 + # source://prism//lib/prism/dsl.rb#476 def InterpolatedSymbolNode(opening_loc, parts, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new InterpolatedXStringNode node # - # source://prism//lib/prism/dsl.rb#479 + # source://prism//lib/prism/dsl.rb#481 def InterpolatedXStringNode(opening_loc, parts, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end + # Create a new ItParametersNode node + # + # source://prism//lib/prism/dsl.rb#486 + def ItParametersNode(source = T.unsafe(nil), location = T.unsafe(nil)); end + # Create a new KeywordHashNode node # - # source://prism//lib/prism/dsl.rb#484 + # source://prism//lib/prism/dsl.rb#491 def KeywordHashNode(flags, elements, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new KeywordRestParameterNode node # - # source://prism//lib/prism/dsl.rb#489 + # source://prism//lib/prism/dsl.rb#496 def KeywordRestParameterNode(flags, name, name_loc, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new LambdaNode node # - # source://prism//lib/prism/dsl.rb#494 + # source://prism//lib/prism/dsl.rb#501 def LambdaNode(locals, operator_loc, opening_loc, closing_loc, parameters, body, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new LocalVariableAndWriteNode node # - # source://prism//lib/prism/dsl.rb#499 + # source://prism//lib/prism/dsl.rb#506 def LocalVariableAndWriteNode(name_loc, operator_loc, value, name, depth, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new LocalVariableOperatorWriteNode node # - # source://prism//lib/prism/dsl.rb#504 + # source://prism//lib/prism/dsl.rb#511 def LocalVariableOperatorWriteNode(name_loc, operator_loc, value, name, operator, depth, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new LocalVariableOrWriteNode node # - # source://prism//lib/prism/dsl.rb#509 + # source://prism//lib/prism/dsl.rb#516 def LocalVariableOrWriteNode(name_loc, operator_loc, value, name, depth, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new LocalVariableReadNode node # - # source://prism//lib/prism/dsl.rb#514 + # source://prism//lib/prism/dsl.rb#521 def LocalVariableReadNode(name, depth, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new LocalVariableTargetNode node # - # source://prism//lib/prism/dsl.rb#519 + # source://prism//lib/prism/dsl.rb#526 def LocalVariableTargetNode(name, depth, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new LocalVariableWriteNode node # - # source://prism//lib/prism/dsl.rb#524 + # source://prism//lib/prism/dsl.rb#531 def LocalVariableWriteNode(name, depth, name_loc, value, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new Location object # - # source://prism//lib/prism/dsl.rb#44 + # source://prism//lib/prism/dsl.rb#46 def Location(source = T.unsafe(nil), start_offset = T.unsafe(nil), length = T.unsafe(nil)); end # Create a new MatchLastLineNode node # - # source://prism//lib/prism/dsl.rb#529 + # source://prism//lib/prism/dsl.rb#536 def MatchLastLineNode(flags, opening_loc, content_loc, closing_loc, unescaped, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new MatchPredicateNode node # - # source://prism//lib/prism/dsl.rb#534 + # source://prism//lib/prism/dsl.rb#541 def MatchPredicateNode(value, pattern, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new MatchRequiredNode node # - # source://prism//lib/prism/dsl.rb#539 + # source://prism//lib/prism/dsl.rb#546 def MatchRequiredNode(value, pattern, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new MatchWriteNode node # - # source://prism//lib/prism/dsl.rb#544 + # source://prism//lib/prism/dsl.rb#551 def MatchWriteNode(call, targets, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new MissingNode node # - # source://prism//lib/prism/dsl.rb#549 + # source://prism//lib/prism/dsl.rb#556 def MissingNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ModuleNode node # - # source://prism//lib/prism/dsl.rb#554 + # source://prism//lib/prism/dsl.rb#561 def ModuleNode(locals, module_keyword_loc, constant_path, body, end_keyword_loc, name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new MultiTargetNode node # - # source://prism//lib/prism/dsl.rb#559 + # source://prism//lib/prism/dsl.rb#566 def MultiTargetNode(lefts, rest, rights, lparen_loc, rparen_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new MultiWriteNode node # - # source://prism//lib/prism/dsl.rb#564 + # source://prism//lib/prism/dsl.rb#571 def MultiWriteNode(lefts, rest, rights, lparen_loc, rparen_loc, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new NextNode node # - # source://prism//lib/prism/dsl.rb#569 + # source://prism//lib/prism/dsl.rb#576 def NextNode(arguments, keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new NilNode node # - # source://prism//lib/prism/dsl.rb#574 + # source://prism//lib/prism/dsl.rb#581 def NilNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new NoKeywordsParameterNode node # - # source://prism//lib/prism/dsl.rb#579 + # source://prism//lib/prism/dsl.rb#586 def NoKeywordsParameterNode(operator_loc, keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new NumberedParametersNode node # - # source://prism//lib/prism/dsl.rb#584 + # source://prism//lib/prism/dsl.rb#591 def NumberedParametersNode(maximum, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new NumberedReferenceReadNode node # - # source://prism//lib/prism/dsl.rb#589 + # source://prism//lib/prism/dsl.rb#596 def NumberedReferenceReadNode(number, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new OptionalKeywordParameterNode node # - # source://prism//lib/prism/dsl.rb#594 + # source://prism//lib/prism/dsl.rb#601 def OptionalKeywordParameterNode(flags, name, name_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new OptionalParameterNode node # - # source://prism//lib/prism/dsl.rb#599 + # source://prism//lib/prism/dsl.rb#606 def OptionalParameterNode(flags, name, name_loc, operator_loc, value, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new OrNode node # - # source://prism//lib/prism/dsl.rb#604 + # source://prism//lib/prism/dsl.rb#611 def OrNode(left, right, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ParametersNode node # - # source://prism//lib/prism/dsl.rb#609 + # source://prism//lib/prism/dsl.rb#616 def ParametersNode(requireds, optionals, rest, posts, keywords, keyword_rest, block, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ParenthesesNode node # - # source://prism//lib/prism/dsl.rb#614 + # source://prism//lib/prism/dsl.rb#621 def ParenthesesNode(body, opening_loc, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new PinnedExpressionNode node # - # source://prism//lib/prism/dsl.rb#619 + # source://prism//lib/prism/dsl.rb#626 def PinnedExpressionNode(expression, operator_loc, lparen_loc, rparen_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new PinnedVariableNode node # - # source://prism//lib/prism/dsl.rb#624 + # source://prism//lib/prism/dsl.rb#631 def PinnedVariableNode(variable, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new PostExecutionNode node # - # source://prism//lib/prism/dsl.rb#629 + # source://prism//lib/prism/dsl.rb#636 def PostExecutionNode(statements, keyword_loc, opening_loc, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new PreExecutionNode node # - # source://prism//lib/prism/dsl.rb#634 + # source://prism//lib/prism/dsl.rb#641 def PreExecutionNode(statements, keyword_loc, opening_loc, closing_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ProgramNode node # - # source://prism//lib/prism/dsl.rb#639 + # source://prism//lib/prism/dsl.rb#646 def ProgramNode(locals, statements, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new RangeNode node # - # source://prism//lib/prism/dsl.rb#644 + # source://prism//lib/prism/dsl.rb#651 def RangeNode(flags, left, right, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new RationalNode node # - # source://prism//lib/prism/dsl.rb#649 + # source://prism//lib/prism/dsl.rb#656 def RationalNode(numeric, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new RedoNode node # - # source://prism//lib/prism/dsl.rb#654 + # source://prism//lib/prism/dsl.rb#661 def RedoNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new RegularExpressionNode node # - # source://prism//lib/prism/dsl.rb#659 + # source://prism//lib/prism/dsl.rb#666 def RegularExpressionNode(flags, opening_loc, content_loc, closing_loc, unescaped, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new RequiredKeywordParameterNode node # - # source://prism//lib/prism/dsl.rb#664 + # source://prism//lib/prism/dsl.rb#671 def RequiredKeywordParameterNode(flags, name, name_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new RequiredParameterNode node # - # source://prism//lib/prism/dsl.rb#669 + # source://prism//lib/prism/dsl.rb#676 def RequiredParameterNode(flags, name, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new RescueModifierNode node # - # source://prism//lib/prism/dsl.rb#674 + # source://prism//lib/prism/dsl.rb#681 def RescueModifierNode(expression, keyword_loc, rescue_expression, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new RescueNode node # - # source://prism//lib/prism/dsl.rb#679 + # source://prism//lib/prism/dsl.rb#686 def RescueNode(keyword_loc, exceptions, operator_loc, reference, statements, consequent, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new RestParameterNode node # - # source://prism//lib/prism/dsl.rb#684 + # source://prism//lib/prism/dsl.rb#691 def RestParameterNode(flags, name, name_loc, operator_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new RetryNode node # - # source://prism//lib/prism/dsl.rb#689 + # source://prism//lib/prism/dsl.rb#696 def RetryNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new ReturnNode node # - # source://prism//lib/prism/dsl.rb#694 + # source://prism//lib/prism/dsl.rb#701 def ReturnNode(keyword_loc, arguments, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new SelfNode node # - # source://prism//lib/prism/dsl.rb#699 + # source://prism//lib/prism/dsl.rb#706 def SelfNode(source = T.unsafe(nil), location = T.unsafe(nil)); end + # Create a new ShareableConstantNode node + # + # source://prism//lib/prism/dsl.rb#711 + def ShareableConstantNode(flags, write, source = T.unsafe(nil), location = T.unsafe(nil)); end + # Create a new SingletonClassNode node # - # source://prism//lib/prism/dsl.rb#704 + # source://prism//lib/prism/dsl.rb#716 def SingletonClassNode(locals, class_keyword_loc, operator_loc, expression, body, end_keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new SourceEncodingNode node # - # source://prism//lib/prism/dsl.rb#709 + # source://prism//lib/prism/dsl.rb#721 def SourceEncodingNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new SourceFileNode node # - # source://prism//lib/prism/dsl.rb#714 - def SourceFileNode(filepath, source = T.unsafe(nil), location = T.unsafe(nil)); end + # source://prism//lib/prism/dsl.rb#726 + def SourceFileNode(flags, filepath, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new SourceLineNode node # - # source://prism//lib/prism/dsl.rb#719 + # source://prism//lib/prism/dsl.rb#731 def SourceLineNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new SplatNode node # - # source://prism//lib/prism/dsl.rb#724 + # source://prism//lib/prism/dsl.rb#736 def SplatNode(operator_loc, expression, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new StatementsNode node # - # source://prism//lib/prism/dsl.rb#729 + # source://prism//lib/prism/dsl.rb#741 def StatementsNode(body, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new StringNode node # - # source://prism//lib/prism/dsl.rb#734 + # source://prism//lib/prism/dsl.rb#746 def StringNode(flags, opening_loc, content_loc, closing_loc, unescaped, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new SuperNode node # - # source://prism//lib/prism/dsl.rb#739 + # source://prism//lib/prism/dsl.rb#751 def SuperNode(keyword_loc, lparen_loc, arguments, rparen_loc, block, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new SymbolNode node # - # source://prism//lib/prism/dsl.rb#744 + # source://prism//lib/prism/dsl.rb#756 def SymbolNode(flags, opening_loc, value_loc, closing_loc, unescaped, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new TrueNode node # - # source://prism//lib/prism/dsl.rb#749 + # source://prism//lib/prism/dsl.rb#761 def TrueNode(source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new UndefNode node # - # source://prism//lib/prism/dsl.rb#754 + # source://prism//lib/prism/dsl.rb#766 def UndefNode(names, keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new UnlessNode node # - # source://prism//lib/prism/dsl.rb#759 + # source://prism//lib/prism/dsl.rb#771 def UnlessNode(keyword_loc, predicate, then_keyword_loc, statements, consequent, end_keyword_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new UntilNode node # - # source://prism//lib/prism/dsl.rb#764 + # source://prism//lib/prism/dsl.rb#776 def UntilNode(flags, keyword_loc, closing_loc, predicate, statements, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new WhenNode node # - # source://prism//lib/prism/dsl.rb#769 - def WhenNode(keyword_loc, conditions, statements, source = T.unsafe(nil), location = T.unsafe(nil)); end + # source://prism//lib/prism/dsl.rb#781 + def WhenNode(keyword_loc, conditions, then_keyword_loc, statements, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new WhileNode node # - # source://prism//lib/prism/dsl.rb#774 + # source://prism//lib/prism/dsl.rb#786 def WhileNode(flags, keyword_loc, closing_loc, predicate, statements, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new XStringNode node # - # source://prism//lib/prism/dsl.rb#779 + # source://prism//lib/prism/dsl.rb#791 def XStringNode(flags, opening_loc, content_loc, closing_loc, unescaped, source = T.unsafe(nil), location = T.unsafe(nil)); end # Create a new YieldNode node # - # source://prism//lib/prism/dsl.rb#784 + # source://prism//lib/prism/dsl.rb#796 def YieldNode(keyword_loc, lparen_loc, arguments, rparen_loc, source = T.unsafe(nil), location = T.unsafe(nil)); end end @@ -7860,6 +8813,7 @@ module Prism::Debug def format_errors(_arg0, _arg1); end def inspect_node(_arg0); end + def integer_parse(_arg0); end def memsize(_arg0); end def named_captures(_arg0); end @@ -7882,6 +8836,7 @@ module Prism::Debug def prism_locals(source); end def profile_file(_arg0); end + def static_inspect(*_arg0); end end end @@ -7893,6 +8848,70 @@ end # source://prism//lib/prism/debug.rb#90 Prism::Debug::AnonymousLocal = T.let(T.unsafe(nil), Object) +# A wrapping around prism's internal encoding data structures. This is used +# for reflection and debugging purposes. +# +# source://prism//lib/prism/debug.rb#208 +class Prism::Debug::Encoding + # Initialize a new encoding with the given name and whether or not it is + # a multibyte encoding. + # + # @return [Encoding] a new instance of Encoding + # + # source://prism//lib/prism/debug.rb#214 + def initialize(name, multibyte); end + + # Returns true if the first character in the source string is a valid + # alphanumeric character for the encoding. + # + # @return [Boolean] + # + # source://prism//lib/prism/debug.rb#232 + def alnum?(source); end + + # Returns true if the first character in the source string is a valid + # alphabetic character for the encoding. + # + # @return [Boolean] + # + # source://prism//lib/prism/debug.rb#238 + def alpha?(source); end + + # Whether or not the encoding is a multibyte encoding. + # + # @return [Boolean] + # + # source://prism//lib/prism/debug.rb#220 + def multibyte?; end + + # The name of the encoding, that can be passed to Encoding.find. + # + # source://prism//lib/prism/debug.rb#210 + def name; end + + # Returns true if the first character in the source string is a valid + # uppercase character for the encoding. + # + # @return [Boolean] + # + # source://prism//lib/prism/debug.rb#244 + def upper?(source); end + + # Returns the number of bytes of the first character in the source string, + # if it is valid for the encoding. Otherwise, returns 0. + # + # source://prism//lib/prism/debug.rb#226 + def width(source); end + + class << self + def _alnum?(_arg0, _arg1); end + def _alpha?(_arg0, _arg1); end + def _upper?(_arg0, _arg1); end + def _width(_arg0, _arg1); end + def all; end + end +end + # A wrapper around a RubyVM::InstructionSequence that provides a more # convenient interface for accessing parts of the iseq. # @@ -7925,170 +8944,206 @@ end # end # ^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#5889 +# source://prism//lib/prism/node.rb#5699 class Prism::DefNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Node? receiver, ParametersNode? parameters, Node? body, Array[Symbol] locals, Location def_keyword_loc, Location? operator_loc, Location? lparen_loc, Location? rparen_loc, Location? equal_loc, Location? end_keyword_loc, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Prism::node? receiver, ParametersNode? parameters, Prism::node? body, Array[Symbol] locals, Location def_keyword_loc, Location? operator_loc, Location? lparen_loc, Location? rparen_loc, Location? equal_loc, Location? end_keyword_loc, Location location) -> void # # @return [DefNode] a new instance of DefNode # - # source://prism//lib/prism/node.rb#5891 + # source://prism//lib/prism/node.rb#5701 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + receiver: T.nilable(Prism::Node), + parameters: T.nilable(Prism::ParametersNode), + body: T.nilable(Prism::Node), + locals: T::Array[Symbol], + def_keyword_loc: Prism::Location, + operator_loc: T.nilable(Prism::Location), + lparen_loc: T.nilable(Prism::Location), + rparen_loc: T.nilable(Prism::Location), + equal_loc: T.nilable(Prism::Location), + end_keyword_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, name, name_loc, receiver, parameters, body, locals, def_keyword_loc, operator_loc, lparen_loc, rparen_loc, equal_loc, end_keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#5910 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#5720 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader body: Node? + # attr_reader body: Prism::node? # - # source://prism//lib/prism/node.rb#5977 + # source://prism//lib/prism/node.rb#5773 sig { returns(T.nilable(Prism::Node)) } def body; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5915 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5725 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#5929 + # source://prism//lib/prism/node.rb#5739 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#5920 + # source://prism//lib/prism/node.rb#5730 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> DefNode + # def copy: (?name: Symbol, ?name_loc: Location, ?receiver: Prism::node?, ?parameters: ParametersNode?, ?body: Prism::node?, ?locals: Array[Symbol], ?def_keyword_loc: Location, ?operator_loc: Location?, ?lparen_loc: Location?, ?rparen_loc: Location?, ?equal_loc: Location?, ?end_keyword_loc: Location?, ?location: Location) -> DefNode # - # source://prism//lib/prism/node.rb#5934 - sig { params(params: T.untyped).returns(Prism::DefNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#5744 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + receiver: T.nilable(Prism::Node), + parameters: T.nilable(Prism::ParametersNode), + body: T.nilable(Prism::Node), + locals: T::Array[Symbol], + def_keyword_loc: Prism::Location, + operator_loc: T.nilable(Prism::Location), + lparen_loc: T.nilable(Prism::Location), + rparen_loc: T.nilable(Prism::Location), + equal_loc: T.nilable(Prism::Location), + end_keyword_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::DefNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), receiver: T.unsafe(nil), parameters: T.unsafe(nil), body: T.unsafe(nil), locals: T.unsafe(nil), def_keyword_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil), equal_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#5915 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5725 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, receiver: Node?, parameters: ParametersNode?, body: Node?, locals: Array[Symbol], def_keyword_loc: Location, operator_loc: Location?, lparen_loc: Location?, rparen_loc: Location?, equal_loc: Location?, end_keyword_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, receiver: Prism::node?, parameters: ParametersNode?, body: Prism::node?, locals: Array[Symbol], def_keyword_loc: Location, operator_loc: Location?, lparen_loc: Location?, rparen_loc: Location?, equal_loc: Location?, end_keyword_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#5957 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#5752 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def def_keyword: () -> String # - # source://prism//lib/prism/node.rb#6050 + # source://prism//lib/prism/node.rb#5852 sig { returns(String) } def def_keyword; end # attr_reader def_keyword_loc: Location # - # source://prism//lib/prism/node.rb#5983 + # source://prism//lib/prism/node.rb#5779 sig { returns(Prism::Location) } def def_keyword_loc; end # def end_keyword: () -> String? # - # source://prism//lib/prism/node.rb#6075 + # source://prism//lib/prism/node.rb#5877 sig { returns(T.nilable(String)) } def end_keyword; end # attr_reader end_keyword_loc: Location? # - # source://prism//lib/prism/node.rb#6037 + # source://prism//lib/prism/node.rb#5838 sig { returns(T.nilable(Prism::Location)) } def end_keyword_loc; end # def equal: () -> String? # - # source://prism//lib/prism/node.rb#6070 + # source://prism//lib/prism/node.rb#5872 sig { returns(T.nilable(String)) } def equal; end # attr_reader equal_loc: Location? # - # source://prism//lib/prism/node.rb#6025 + # source://prism//lib/prism/node.rb#5825 sig { returns(T.nilable(Prism::Location)) } def equal_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#6080 + # source://prism//lib/prism/node.rb#5882 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader locals: Array[Symbol] # - # source://prism//lib/prism/node.rb#5980 + # source://prism//lib/prism/node.rb#5776 sig { returns(T::Array[Symbol]) } def locals; end # def lparen: () -> String? # - # source://prism//lib/prism/node.rb#6060 + # source://prism//lib/prism/node.rb#5862 sig { returns(T.nilable(String)) } def lparen; end # attr_reader lparen_loc: Location? # - # source://prism//lib/prism/node.rb#6001 + # source://prism//lib/prism/node.rb#5799 sig { returns(T.nilable(Prism::Location)) } def lparen_loc; end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#5962 + # source://prism//lib/prism/node.rb#5757 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#5965 + # source://prism//lib/prism/node.rb#5760 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String? # - # source://prism//lib/prism/node.rb#6055 + # source://prism//lib/prism/node.rb#5857 sig { returns(T.nilable(String)) } def operator; end # attr_reader operator_loc: Location? # - # source://prism//lib/prism/node.rb#5989 + # source://prism//lib/prism/node.rb#5786 sig { returns(T.nilable(Prism::Location)) } def operator_loc; end # attr_reader parameters: ParametersNode? # - # source://prism//lib/prism/node.rb#5974 + # source://prism//lib/prism/node.rb#5770 sig { returns(T.nilable(Prism::ParametersNode)) } def parameters; end - # attr_reader receiver: Node? + # attr_reader receiver: Prism::node? # - # source://prism//lib/prism/node.rb#5971 + # source://prism//lib/prism/node.rb#5767 sig { returns(T.nilable(Prism::Node)) } def receiver; end # def rparen: () -> String? # - # source://prism//lib/prism/node.rb#6065 + # source://prism//lib/prism/node.rb#5867 sig { returns(T.nilable(String)) } def rparen; end # attr_reader rparen_loc: Location? # - # source://prism//lib/prism/node.rb#6013 + # source://prism//lib/prism/node.rb#5812 sig { returns(T.nilable(Prism::Location)) } def rparen_loc; end @@ -8107,7 +9162,8 @@ class Prism::DefNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#6126 + # source://prism//lib/prism/node.rb#5928 + sig { override.returns(Symbol) } def type; end class << self @@ -8118,7 +9174,7 @@ class Prism::DefNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#6136 + # source://prism//lib/prism/node.rb#5938 def type; end end end @@ -8128,98 +9184,118 @@ end # defined?(a) # ^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#6145 +# source://prism//lib/prism/node.rb#5947 class Prism::DefinedNode < ::Prism::Node - # def initialize: (Location? lparen_loc, Node value, Location? rparen_loc, Location keyword_loc, Location location) -> void + # def initialize: (Location? lparen_loc, Prism::node value, Location? rparen_loc, Location keyword_loc, Location location) -> void # # @return [DefinedNode] a new instance of DefinedNode # - # source://prism//lib/prism/node.rb#6147 + # source://prism//lib/prism/node.rb#5949 + sig do + params( + source: Prism::Source, + lparen_loc: T.nilable(Prism::Location), + value: Prism::Node, + rparen_loc: T.nilable(Prism::Location), + keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, lparen_loc, value, rparen_loc, keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#6158 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#5960 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6163 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5965 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#6173 + # source://prism//lib/prism/node.rb#5975 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#6168 + # source://prism//lib/prism/node.rb#5970 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> DefinedNode + # def copy: (?lparen_loc: Location?, ?value: Prism::node, ?rparen_loc: Location?, ?keyword_loc: Location, ?location: Location) -> DefinedNode # - # source://prism//lib/prism/node.rb#6178 - sig { params(params: T.untyped).returns(Prism::DefinedNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#5980 + sig do + params( + lparen_loc: T.nilable(Prism::Location), + value: Prism::Node, + rparen_loc: T.nilable(Prism::Location), + keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::DefinedNode) + end + def copy(lparen_loc: T.unsafe(nil), value: T.unsafe(nil), rparen_loc: T.unsafe(nil), keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6163 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#5965 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { lparen_loc: Location?, value: Node, rparen_loc: Location?, keyword_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { lparen_loc: Location?, value: Prism::node, rparen_loc: Location?, keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#6193 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#5988 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#6247 + # source://prism//lib/prism/node.rb#6045 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#6242 + # source://prism//lib/prism/node.rb#6040 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#6225 + # source://prism//lib/prism/node.rb#6022 sig { returns(Prism::Location) } def keyword_loc; end # def lparen: () -> String? # - # source://prism//lib/prism/node.rb#6232 + # source://prism//lib/prism/node.rb#6030 sig { returns(T.nilable(String)) } def lparen; end # attr_reader lparen_loc: Location? # - # source://prism//lib/prism/node.rb#6198 + # source://prism//lib/prism/node.rb#5993 sig { returns(T.nilable(Prism::Location)) } def lparen_loc; end # def rparen: () -> String? # - # source://prism//lib/prism/node.rb#6237 + # source://prism//lib/prism/node.rb#6035 sig { returns(T.nilable(String)) } def rparen; end # attr_reader rparen_loc: Location? # - # source://prism//lib/prism/node.rb#6213 + # source://prism//lib/prism/node.rb#6009 sig { returns(T.nilable(Prism::Location)) } def rparen_loc; end @@ -8238,12 +9314,13 @@ class Prism::DefinedNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#6271 + # source://prism//lib/prism/node.rb#6069 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#6210 + # source://prism//lib/prism/node.rb#6006 sig { returns(Prism::Node) } def value; end @@ -8255,7 +9332,7 @@ class Prism::DefinedNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#6281 + # source://prism//lib/prism/node.rb#6079 def type; end end end @@ -8301,15 +9378,17 @@ end # DesugarCompiler is a compiler that desugars Ruby code into a more primitive # form. This is useful for consumers that want to deal with fewer node types. # -# source://prism//lib/prism/desugar_compiler.rb#216 +# source://prism//lib/prism/desugar_compiler.rb#218 class Prism::DesugarCompiler < ::Prism::MutationCompiler + Result = type_member { { fixed: Prism::Node } } + # @@foo &&= bar # # becomes # # @@foo && @@foo = bar # - # source://prism//lib/prism/desugar_compiler.rb#222 + # source://prism//lib/prism/desugar_compiler.rb#224 def visit_class_variable_and_write_node(node); end # @@foo += bar @@ -8318,7 +9397,7 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # @@foo = @@foo + bar # - # source://prism//lib/prism/desugar_compiler.rb#240 + # source://prism//lib/prism/desugar_compiler.rb#242 def visit_class_variable_operator_write_node(node); end # @@foo ||= bar @@ -8327,7 +9406,7 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # defined?(@@foo) ? @@foo : @@foo = bar # - # source://prism//lib/prism/desugar_compiler.rb#231 + # source://prism//lib/prism/desugar_compiler.rb#233 def visit_class_variable_or_write_node(node); end # Foo &&= bar @@ -8336,7 +9415,7 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # Foo && Foo = bar # - # source://prism//lib/prism/desugar_compiler.rb#249 + # source://prism//lib/prism/desugar_compiler.rb#251 def visit_constant_and_write_node(node); end # Foo += bar @@ -8345,7 +9424,7 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # Foo = Foo + bar # - # source://prism//lib/prism/desugar_compiler.rb#267 + # source://prism//lib/prism/desugar_compiler.rb#269 def visit_constant_operator_write_node(node); end # Foo ||= bar @@ -8354,7 +9433,7 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # defined?(Foo) ? Foo : Foo = bar # - # source://prism//lib/prism/desugar_compiler.rb#258 + # source://prism//lib/prism/desugar_compiler.rb#260 def visit_constant_or_write_node(node); end # $foo &&= bar @@ -8363,7 +9442,7 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # $foo && $foo = bar # - # source://prism//lib/prism/desugar_compiler.rb#276 + # source://prism//lib/prism/desugar_compiler.rb#278 def visit_global_variable_and_write_node(node); end # $foo += bar @@ -8372,7 +9451,7 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # $foo = $foo + bar # - # source://prism//lib/prism/desugar_compiler.rb#294 + # source://prism//lib/prism/desugar_compiler.rb#296 def visit_global_variable_operator_write_node(node); end # $foo ||= bar @@ -8381,22 +9460,22 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # defined?($foo) ? $foo : $foo = bar # - # source://prism//lib/prism/desugar_compiler.rb#285 + # source://prism//lib/prism/desugar_compiler.rb#287 def visit_global_variable_or_write_node(node); end # becomes # - # source://prism//lib/prism/desugar_compiler.rb#303 + # source://prism//lib/prism/desugar_compiler.rb#305 def visit_instance_variable_and_write_node(node); end # becomes # - # source://prism//lib/prism/desugar_compiler.rb#321 + # source://prism//lib/prism/desugar_compiler.rb#323 def visit_instance_variable_operator_write_node(node); end # becomes # - # source://prism//lib/prism/desugar_compiler.rb#312 + # source://prism//lib/prism/desugar_compiler.rb#314 def visit_instance_variable_or_write_node(node); end # foo &&= bar @@ -8405,7 +9484,7 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # foo && foo = bar # - # source://prism//lib/prism/desugar_compiler.rb#330 + # source://prism//lib/prism/desugar_compiler.rb#332 def visit_local_variable_and_write_node(node); end # foo += bar @@ -8414,7 +9493,7 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # foo = foo + bar # - # source://prism//lib/prism/desugar_compiler.rb#348 + # source://prism//lib/prism/desugar_compiler.rb#350 def visit_local_variable_operator_write_node(node); end # foo ||= bar @@ -8423,7 +9502,7 @@ class Prism::DesugarCompiler < ::Prism::MutationCompiler # # foo || foo = bar # - # source://prism//lib/prism/desugar_compiler.rb#339 + # source://prism//lib/prism/desugar_compiler.rb#341 def visit_local_variable_or_write_node(node); end end @@ -8503,41 +9582,41 @@ class Prism::DesugarOrWriteDefinedNode def write_class; end end -# source://prism//lib/prism/desugar_compiler.rb#99 +# source://prism//lib/prism/desugar_compiler.rb#101 class Prism::DesugarOrWriteNode # @return [DesugarOrWriteNode] a new instance of DesugarOrWriteNode # - # source://prism//lib/prism/desugar_compiler.rb#102 + # source://prism//lib/prism/desugar_compiler.rb#104 def initialize(node, source, read_class, write_class, *arguments); end # Returns the value of attribute arguments. # - # source://prism//lib/prism/desugar_compiler.rb#100 + # source://prism//lib/prism/desugar_compiler.rb#102 def arguments; end # Desugar `x ||= y` to `x || x = y` # - # source://prism//lib/prism/desugar_compiler.rb#111 + # source://prism//lib/prism/desugar_compiler.rb#113 def compile; end # Returns the value of attribute node. # - # source://prism//lib/prism/desugar_compiler.rb#100 + # source://prism//lib/prism/desugar_compiler.rb#102 def node; end # Returns the value of attribute read_class. # - # source://prism//lib/prism/desugar_compiler.rb#100 + # source://prism//lib/prism/desugar_compiler.rb#102 def read_class; end # Returns the value of attribute source. # - # source://prism//lib/prism/desugar_compiler.rb#100 + # source://prism//lib/prism/desugar_compiler.rb#102 def source; end # Returns the value of attribute write_class. # - # source://prism//lib/prism/desugar_compiler.rb#100 + # source://prism//lib/prism/desugar_compiler.rb#102 def write_class; end end @@ -8572,2443 +9651,2475 @@ end # integer = result.value.statements.body.first.receiver.receiver # dispatcher.dispatch_once(integer) # -# source://prism//lib/prism/dispatcher.rb#40 +# source://prism//lib/prism/dispatcher.rb#41 class Prism::Dispatcher < ::Prism::Visitor # Initialize a new dispatcher. # # @return [Dispatcher] a new instance of Dispatcher # - # source://prism//lib/prism/dispatcher.rb#45 + # source://prism//lib/prism/dispatcher.rb#46 def initialize; end # Walks `root` dispatching events to all registered listeners. # # def dispatch: (Node) -> void # - # source://prism//lib/prism/visitor.rb#16 + # source://prism//lib/prism/visitor.rb#17 def dispatch(node); end # Dispatches a single event for `node` to all registered listeners. # # def dispatch_once: (Node) -> void # - # source://prism//lib/prism/dispatcher.rb#64 + # source://prism//lib/prism/dispatcher.rb#65 def dispatch_once(node); end # attr_reader listeners: Hash[Symbol, Array[Listener]] # - # source://prism//lib/prism/dispatcher.rb#42 + # source://prism//lib/prism/dispatcher.rb#43 def listeners; end # Register a listener for one or more events. # # def register: (Listener, *Symbol) -> void # - # source://prism//lib/prism/dispatcher.rb#52 + # source://prism//lib/prism/dispatcher.rb#53 def register(listener, *events); end # Dispatch enter and leave events for AliasGlobalVariableNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#70 + # source://prism//lib/prism/dispatcher.rb#71 def visit_alias_global_variable_node(node); end # Dispatch enter and leave events for AliasMethodNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#78 + # source://prism//lib/prism/dispatcher.rb#79 def visit_alias_method_node(node); end # Dispatch enter and leave events for AlternationPatternNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#86 + # source://prism//lib/prism/dispatcher.rb#87 def visit_alternation_pattern_node(node); end # Dispatch enter and leave events for AndNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#94 + # source://prism//lib/prism/dispatcher.rb#95 def visit_and_node(node); end # Dispatch enter and leave events for ArgumentsNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#102 + # source://prism//lib/prism/dispatcher.rb#103 def visit_arguments_node(node); end # Dispatch enter and leave events for ArrayNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#110 + # source://prism//lib/prism/dispatcher.rb#111 def visit_array_node(node); end # Dispatch enter and leave events for ArrayPatternNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#118 + # source://prism//lib/prism/dispatcher.rb#119 def visit_array_pattern_node(node); end # Dispatch enter and leave events for AssocNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#126 + # source://prism//lib/prism/dispatcher.rb#127 def visit_assoc_node(node); end # Dispatch enter and leave events for AssocSplatNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#134 + # source://prism//lib/prism/dispatcher.rb#135 def visit_assoc_splat_node(node); end # Dispatch enter and leave events for BackReferenceReadNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#142 + # source://prism//lib/prism/dispatcher.rb#143 def visit_back_reference_read_node(node); end # Dispatch enter and leave events for BeginNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#150 + # source://prism//lib/prism/dispatcher.rb#151 def visit_begin_node(node); end # Dispatch enter and leave events for BlockArgumentNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#158 + # source://prism//lib/prism/dispatcher.rb#159 def visit_block_argument_node(node); end # Dispatch enter and leave events for BlockLocalVariableNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#166 + # source://prism//lib/prism/dispatcher.rb#167 def visit_block_local_variable_node(node); end # Dispatch enter and leave events for BlockNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#174 + # source://prism//lib/prism/dispatcher.rb#175 def visit_block_node(node); end # Dispatch enter and leave events for BlockParameterNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#182 + # source://prism//lib/prism/dispatcher.rb#183 def visit_block_parameter_node(node); end # Dispatch enter and leave events for BlockParametersNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#190 + # source://prism//lib/prism/dispatcher.rb#191 def visit_block_parameters_node(node); end # Dispatch enter and leave events for BreakNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#198 + # source://prism//lib/prism/dispatcher.rb#199 def visit_break_node(node); end # Dispatch enter and leave events for CallAndWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#206 + # source://prism//lib/prism/dispatcher.rb#207 def visit_call_and_write_node(node); end # Dispatch enter and leave events for CallNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#214 + # source://prism//lib/prism/dispatcher.rb#215 def visit_call_node(node); end # Dispatch enter and leave events for CallOperatorWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#222 + # source://prism//lib/prism/dispatcher.rb#223 def visit_call_operator_write_node(node); end # Dispatch enter and leave events for CallOrWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#230 + # source://prism//lib/prism/dispatcher.rb#231 def visit_call_or_write_node(node); end # Dispatch enter and leave events for CallTargetNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#238 + # source://prism//lib/prism/dispatcher.rb#239 def visit_call_target_node(node); end # Dispatch enter and leave events for CapturePatternNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#246 + # source://prism//lib/prism/dispatcher.rb#247 def visit_capture_pattern_node(node); end # Dispatch enter and leave events for CaseMatchNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#254 + # source://prism//lib/prism/dispatcher.rb#255 def visit_case_match_node(node); end # Dispatch enter and leave events for CaseNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#262 + # source://prism//lib/prism/dispatcher.rb#263 def visit_case_node(node); end # Dispatch enter and leave events for ClassNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#270 + # source://prism//lib/prism/dispatcher.rb#271 def visit_class_node(node); end # Dispatch enter and leave events for ClassVariableAndWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#278 + # source://prism//lib/prism/dispatcher.rb#279 def visit_class_variable_and_write_node(node); end # Dispatch enter and leave events for ClassVariableOperatorWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#286 + # source://prism//lib/prism/dispatcher.rb#287 def visit_class_variable_operator_write_node(node); end # Dispatch enter and leave events for ClassVariableOrWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#294 + # source://prism//lib/prism/dispatcher.rb#295 def visit_class_variable_or_write_node(node); end # Dispatch enter and leave events for ClassVariableReadNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#302 + # source://prism//lib/prism/dispatcher.rb#303 def visit_class_variable_read_node(node); end # Dispatch enter and leave events for ClassVariableTargetNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#310 + # source://prism//lib/prism/dispatcher.rb#311 def visit_class_variable_target_node(node); end # Dispatch enter and leave events for ClassVariableWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#318 + # source://prism//lib/prism/dispatcher.rb#319 def visit_class_variable_write_node(node); end # Dispatch enter and leave events for ConstantAndWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#326 + # source://prism//lib/prism/dispatcher.rb#327 def visit_constant_and_write_node(node); end # Dispatch enter and leave events for ConstantOperatorWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#334 + # source://prism//lib/prism/dispatcher.rb#335 def visit_constant_operator_write_node(node); end # Dispatch enter and leave events for ConstantOrWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#342 + # source://prism//lib/prism/dispatcher.rb#343 def visit_constant_or_write_node(node); end # Dispatch enter and leave events for ConstantPathAndWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#350 + # source://prism//lib/prism/dispatcher.rb#351 def visit_constant_path_and_write_node(node); end # Dispatch enter and leave events for ConstantPathNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#358 + # source://prism//lib/prism/dispatcher.rb#359 def visit_constant_path_node(node); end # Dispatch enter and leave events for ConstantPathOperatorWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#366 + # source://prism//lib/prism/dispatcher.rb#367 def visit_constant_path_operator_write_node(node); end # Dispatch enter and leave events for ConstantPathOrWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#374 + # source://prism//lib/prism/dispatcher.rb#375 def visit_constant_path_or_write_node(node); end # Dispatch enter and leave events for ConstantPathTargetNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#382 + # source://prism//lib/prism/dispatcher.rb#383 def visit_constant_path_target_node(node); end # Dispatch enter and leave events for ConstantPathWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#390 + # source://prism//lib/prism/dispatcher.rb#391 def visit_constant_path_write_node(node); end # Dispatch enter and leave events for ConstantReadNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#398 + # source://prism//lib/prism/dispatcher.rb#399 def visit_constant_read_node(node); end # Dispatch enter and leave events for ConstantTargetNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#406 + # source://prism//lib/prism/dispatcher.rb#407 def visit_constant_target_node(node); end # Dispatch enter and leave events for ConstantWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#414 + # source://prism//lib/prism/dispatcher.rb#415 def visit_constant_write_node(node); end # Dispatch enter and leave events for DefNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#422 + # source://prism//lib/prism/dispatcher.rb#423 def visit_def_node(node); end # Dispatch enter and leave events for DefinedNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#430 + # source://prism//lib/prism/dispatcher.rb#431 def visit_defined_node(node); end # Dispatch enter and leave events for ElseNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#438 + # source://prism//lib/prism/dispatcher.rb#439 def visit_else_node(node); end # Dispatch enter and leave events for EmbeddedStatementsNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#446 + # source://prism//lib/prism/dispatcher.rb#447 def visit_embedded_statements_node(node); end # Dispatch enter and leave events for EmbeddedVariableNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#454 + # source://prism//lib/prism/dispatcher.rb#455 def visit_embedded_variable_node(node); end # Dispatch enter and leave events for EnsureNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#462 + # source://prism//lib/prism/dispatcher.rb#463 def visit_ensure_node(node); end # Dispatch enter and leave events for FalseNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#470 + # source://prism//lib/prism/dispatcher.rb#471 def visit_false_node(node); end # Dispatch enter and leave events for FindPatternNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#478 + # source://prism//lib/prism/dispatcher.rb#479 def visit_find_pattern_node(node); end # Dispatch enter and leave events for FlipFlopNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#486 + # source://prism//lib/prism/dispatcher.rb#487 def visit_flip_flop_node(node); end # Dispatch enter and leave events for FloatNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#494 + # source://prism//lib/prism/dispatcher.rb#495 def visit_float_node(node); end # Dispatch enter and leave events for ForNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#502 + # source://prism//lib/prism/dispatcher.rb#503 def visit_for_node(node); end # Dispatch enter and leave events for ForwardingArgumentsNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#510 + # source://prism//lib/prism/dispatcher.rb#511 def visit_forwarding_arguments_node(node); end # Dispatch enter and leave events for ForwardingParameterNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#518 + # source://prism//lib/prism/dispatcher.rb#519 def visit_forwarding_parameter_node(node); end # Dispatch enter and leave events for ForwardingSuperNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#526 + # source://prism//lib/prism/dispatcher.rb#527 def visit_forwarding_super_node(node); end # Dispatch enter and leave events for GlobalVariableAndWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#534 + # source://prism//lib/prism/dispatcher.rb#535 def visit_global_variable_and_write_node(node); end # Dispatch enter and leave events for GlobalVariableOperatorWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#542 + # source://prism//lib/prism/dispatcher.rb#543 def visit_global_variable_operator_write_node(node); end # Dispatch enter and leave events for GlobalVariableOrWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#550 + # source://prism//lib/prism/dispatcher.rb#551 def visit_global_variable_or_write_node(node); end # Dispatch enter and leave events for GlobalVariableReadNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#558 + # source://prism//lib/prism/dispatcher.rb#559 def visit_global_variable_read_node(node); end # Dispatch enter and leave events for GlobalVariableTargetNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#566 + # source://prism//lib/prism/dispatcher.rb#567 def visit_global_variable_target_node(node); end # Dispatch enter and leave events for GlobalVariableWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#574 + # source://prism//lib/prism/dispatcher.rb#575 def visit_global_variable_write_node(node); end # Dispatch enter and leave events for HashNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#582 + # source://prism//lib/prism/dispatcher.rb#583 def visit_hash_node(node); end # Dispatch enter and leave events for HashPatternNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#590 + # source://prism//lib/prism/dispatcher.rb#591 def visit_hash_pattern_node(node); end # Dispatch enter and leave events for IfNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#598 + # source://prism//lib/prism/dispatcher.rb#599 def visit_if_node(node); end # Dispatch enter and leave events for ImaginaryNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#606 + # source://prism//lib/prism/dispatcher.rb#607 def visit_imaginary_node(node); end # Dispatch enter and leave events for ImplicitNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#614 + # source://prism//lib/prism/dispatcher.rb#615 def visit_implicit_node(node); end # Dispatch enter and leave events for ImplicitRestNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#622 + # source://prism//lib/prism/dispatcher.rb#623 def visit_implicit_rest_node(node); end # Dispatch enter and leave events for InNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#630 + # source://prism//lib/prism/dispatcher.rb#631 def visit_in_node(node); end # Dispatch enter and leave events for IndexAndWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#638 + # source://prism//lib/prism/dispatcher.rb#639 def visit_index_and_write_node(node); end # Dispatch enter and leave events for IndexOperatorWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#646 + # source://prism//lib/prism/dispatcher.rb#647 def visit_index_operator_write_node(node); end # Dispatch enter and leave events for IndexOrWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#654 + # source://prism//lib/prism/dispatcher.rb#655 def visit_index_or_write_node(node); end # Dispatch enter and leave events for IndexTargetNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#662 + # source://prism//lib/prism/dispatcher.rb#663 def visit_index_target_node(node); end # Dispatch enter and leave events for InstanceVariableAndWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#670 + # source://prism//lib/prism/dispatcher.rb#671 def visit_instance_variable_and_write_node(node); end # Dispatch enter and leave events for InstanceVariableOperatorWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#678 + # source://prism//lib/prism/dispatcher.rb#679 def visit_instance_variable_operator_write_node(node); end # Dispatch enter and leave events for InstanceVariableOrWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#686 + # source://prism//lib/prism/dispatcher.rb#687 def visit_instance_variable_or_write_node(node); end # Dispatch enter and leave events for InstanceVariableReadNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#694 + # source://prism//lib/prism/dispatcher.rb#695 def visit_instance_variable_read_node(node); end # Dispatch enter and leave events for InstanceVariableTargetNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#702 + # source://prism//lib/prism/dispatcher.rb#703 def visit_instance_variable_target_node(node); end # Dispatch enter and leave events for InstanceVariableWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#710 + # source://prism//lib/prism/dispatcher.rb#711 def visit_instance_variable_write_node(node); end # Dispatch enter and leave events for IntegerNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#718 + # source://prism//lib/prism/dispatcher.rb#719 def visit_integer_node(node); end # Dispatch enter and leave events for InterpolatedMatchLastLineNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#726 + # source://prism//lib/prism/dispatcher.rb#727 def visit_interpolated_match_last_line_node(node); end # Dispatch enter and leave events for InterpolatedRegularExpressionNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#734 + # source://prism//lib/prism/dispatcher.rb#735 def visit_interpolated_regular_expression_node(node); end # Dispatch enter and leave events for InterpolatedStringNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#742 + # source://prism//lib/prism/dispatcher.rb#743 def visit_interpolated_string_node(node); end # Dispatch enter and leave events for InterpolatedSymbolNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#750 + # source://prism//lib/prism/dispatcher.rb#751 def visit_interpolated_symbol_node(node); end # Dispatch enter and leave events for InterpolatedXStringNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#758 + # source://prism//lib/prism/dispatcher.rb#759 def visit_interpolated_x_string_node(node); end + # Dispatch enter and leave events for ItParametersNode nodes and continue + # walking the tree. + # + # source://prism//lib/prism/dispatcher.rb#767 + def visit_it_parameters_node(node); end + # Dispatch enter and leave events for KeywordHashNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#766 + # source://prism//lib/prism/dispatcher.rb#775 def visit_keyword_hash_node(node); end # Dispatch enter and leave events for KeywordRestParameterNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#774 + # source://prism//lib/prism/dispatcher.rb#783 def visit_keyword_rest_parameter_node(node); end # Dispatch enter and leave events for LambdaNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#782 + # source://prism//lib/prism/dispatcher.rb#791 def visit_lambda_node(node); end # Dispatch enter and leave events for LocalVariableAndWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#790 + # source://prism//lib/prism/dispatcher.rb#799 def visit_local_variable_and_write_node(node); end # Dispatch enter and leave events for LocalVariableOperatorWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#798 + # source://prism//lib/prism/dispatcher.rb#807 def visit_local_variable_operator_write_node(node); end # Dispatch enter and leave events for LocalVariableOrWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#806 + # source://prism//lib/prism/dispatcher.rb#815 def visit_local_variable_or_write_node(node); end # Dispatch enter and leave events for LocalVariableReadNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#814 + # source://prism//lib/prism/dispatcher.rb#823 def visit_local_variable_read_node(node); end # Dispatch enter and leave events for LocalVariableTargetNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#822 + # source://prism//lib/prism/dispatcher.rb#831 def visit_local_variable_target_node(node); end # Dispatch enter and leave events for LocalVariableWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#830 + # source://prism//lib/prism/dispatcher.rb#839 def visit_local_variable_write_node(node); end # Dispatch enter and leave events for MatchLastLineNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#838 + # source://prism//lib/prism/dispatcher.rb#847 def visit_match_last_line_node(node); end # Dispatch enter and leave events for MatchPredicateNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#846 + # source://prism//lib/prism/dispatcher.rb#855 def visit_match_predicate_node(node); end # Dispatch enter and leave events for MatchRequiredNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#854 + # source://prism//lib/prism/dispatcher.rb#863 def visit_match_required_node(node); end # Dispatch enter and leave events for MatchWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#862 + # source://prism//lib/prism/dispatcher.rb#871 def visit_match_write_node(node); end # Dispatch enter and leave events for MissingNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#870 + # source://prism//lib/prism/dispatcher.rb#879 def visit_missing_node(node); end # Dispatch enter and leave events for ModuleNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#878 + # source://prism//lib/prism/dispatcher.rb#887 def visit_module_node(node); end # Dispatch enter and leave events for MultiTargetNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#886 + # source://prism//lib/prism/dispatcher.rb#895 def visit_multi_target_node(node); end # Dispatch enter and leave events for MultiWriteNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#894 + # source://prism//lib/prism/dispatcher.rb#903 def visit_multi_write_node(node); end # Dispatch enter and leave events for NextNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#902 + # source://prism//lib/prism/dispatcher.rb#911 def visit_next_node(node); end # Dispatch enter and leave events for NilNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#910 + # source://prism//lib/prism/dispatcher.rb#919 def visit_nil_node(node); end # Dispatch enter and leave events for NoKeywordsParameterNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#918 + # source://prism//lib/prism/dispatcher.rb#927 def visit_no_keywords_parameter_node(node); end # Dispatch enter and leave events for NumberedParametersNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#926 + # source://prism//lib/prism/dispatcher.rb#935 def visit_numbered_parameters_node(node); end # Dispatch enter and leave events for NumberedReferenceReadNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#934 + # source://prism//lib/prism/dispatcher.rb#943 def visit_numbered_reference_read_node(node); end # Dispatch enter and leave events for OptionalKeywordParameterNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#942 + # source://prism//lib/prism/dispatcher.rb#951 def visit_optional_keyword_parameter_node(node); end # Dispatch enter and leave events for OptionalParameterNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#950 + # source://prism//lib/prism/dispatcher.rb#959 def visit_optional_parameter_node(node); end # Dispatch enter and leave events for OrNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#958 + # source://prism//lib/prism/dispatcher.rb#967 def visit_or_node(node); end # Dispatch enter and leave events for ParametersNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#966 + # source://prism//lib/prism/dispatcher.rb#975 def visit_parameters_node(node); end # Dispatch enter and leave events for ParenthesesNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#974 + # source://prism//lib/prism/dispatcher.rb#983 def visit_parentheses_node(node); end # Dispatch enter and leave events for PinnedExpressionNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#982 + # source://prism//lib/prism/dispatcher.rb#991 def visit_pinned_expression_node(node); end # Dispatch enter and leave events for PinnedVariableNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#990 + # source://prism//lib/prism/dispatcher.rb#999 def visit_pinned_variable_node(node); end # Dispatch enter and leave events for PostExecutionNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#998 + # source://prism//lib/prism/dispatcher.rb#1007 def visit_post_execution_node(node); end # Dispatch enter and leave events for PreExecutionNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1006 + # source://prism//lib/prism/dispatcher.rb#1015 def visit_pre_execution_node(node); end # Dispatch enter and leave events for ProgramNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1014 + # source://prism//lib/prism/dispatcher.rb#1023 def visit_program_node(node); end # Dispatch enter and leave events for RangeNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1022 + # source://prism//lib/prism/dispatcher.rb#1031 def visit_range_node(node); end # Dispatch enter and leave events for RationalNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1030 + # source://prism//lib/prism/dispatcher.rb#1039 def visit_rational_node(node); end # Dispatch enter and leave events for RedoNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1038 + # source://prism//lib/prism/dispatcher.rb#1047 def visit_redo_node(node); end # Dispatch enter and leave events for RegularExpressionNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1046 + # source://prism//lib/prism/dispatcher.rb#1055 def visit_regular_expression_node(node); end # Dispatch enter and leave events for RequiredKeywordParameterNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1054 + # source://prism//lib/prism/dispatcher.rb#1063 def visit_required_keyword_parameter_node(node); end # Dispatch enter and leave events for RequiredParameterNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1062 + # source://prism//lib/prism/dispatcher.rb#1071 def visit_required_parameter_node(node); end # Dispatch enter and leave events for RescueModifierNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1070 + # source://prism//lib/prism/dispatcher.rb#1079 def visit_rescue_modifier_node(node); end # Dispatch enter and leave events for RescueNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1078 + # source://prism//lib/prism/dispatcher.rb#1087 def visit_rescue_node(node); end # Dispatch enter and leave events for RestParameterNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1086 + # source://prism//lib/prism/dispatcher.rb#1095 def visit_rest_parameter_node(node); end # Dispatch enter and leave events for RetryNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1094 + # source://prism//lib/prism/dispatcher.rb#1103 def visit_retry_node(node); end # Dispatch enter and leave events for ReturnNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1102 + # source://prism//lib/prism/dispatcher.rb#1111 def visit_return_node(node); end # Dispatch enter and leave events for SelfNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1110 + # source://prism//lib/prism/dispatcher.rb#1119 def visit_self_node(node); end + # Dispatch enter and leave events for ShareableConstantNode nodes and continue + # walking the tree. + # + # source://prism//lib/prism/dispatcher.rb#1127 + def visit_shareable_constant_node(node); end + # Dispatch enter and leave events for SingletonClassNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1118 + # source://prism//lib/prism/dispatcher.rb#1135 def visit_singleton_class_node(node); end # Dispatch enter and leave events for SourceEncodingNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1126 + # source://prism//lib/prism/dispatcher.rb#1143 def visit_source_encoding_node(node); end # Dispatch enter and leave events for SourceFileNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1134 + # source://prism//lib/prism/dispatcher.rb#1151 def visit_source_file_node(node); end # Dispatch enter and leave events for SourceLineNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1142 + # source://prism//lib/prism/dispatcher.rb#1159 def visit_source_line_node(node); end # Dispatch enter and leave events for SplatNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1150 + # source://prism//lib/prism/dispatcher.rb#1167 def visit_splat_node(node); end # Dispatch enter and leave events for StatementsNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1158 + # source://prism//lib/prism/dispatcher.rb#1175 def visit_statements_node(node); end # Dispatch enter and leave events for StringNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1166 + # source://prism//lib/prism/dispatcher.rb#1183 def visit_string_node(node); end # Dispatch enter and leave events for SuperNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1174 + # source://prism//lib/prism/dispatcher.rb#1191 def visit_super_node(node); end # Dispatch enter and leave events for SymbolNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1182 + # source://prism//lib/prism/dispatcher.rb#1199 def visit_symbol_node(node); end # Dispatch enter and leave events for TrueNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1190 + # source://prism//lib/prism/dispatcher.rb#1207 def visit_true_node(node); end # Dispatch enter and leave events for UndefNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1198 + # source://prism//lib/prism/dispatcher.rb#1215 def visit_undef_node(node); end # Dispatch enter and leave events for UnlessNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1206 + # source://prism//lib/prism/dispatcher.rb#1223 def visit_unless_node(node); end # Dispatch enter and leave events for UntilNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1214 + # source://prism//lib/prism/dispatcher.rb#1231 def visit_until_node(node); end # Dispatch enter and leave events for WhenNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1222 + # source://prism//lib/prism/dispatcher.rb#1239 def visit_when_node(node); end # Dispatch enter and leave events for WhileNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1230 + # source://prism//lib/prism/dispatcher.rb#1247 def visit_while_node(node); end # Dispatch enter and leave events for XStringNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1238 + # source://prism//lib/prism/dispatcher.rb#1255 def visit_x_string_node(node); end # Dispatch enter and leave events for YieldNode nodes and continue # walking the tree. # - # source://prism//lib/prism/dispatcher.rb#1246 + # source://prism//lib/prism/dispatcher.rb#1263 def visit_yield_node(node); end end -# source://prism//lib/prism/dispatcher.rb#1252 +# source://prism//lib/prism/dispatcher.rb#1269 class Prism::Dispatcher::DispatchOnce < ::Prism::Visitor # @return [DispatchOnce] a new instance of DispatchOnce # - # source://prism//lib/prism/dispatcher.rb#1255 + # source://prism//lib/prism/dispatcher.rb#1272 def initialize(listeners); end # Returns the value of attribute listeners. # - # source://prism//lib/prism/dispatcher.rb#1253 + # source://prism//lib/prism/dispatcher.rb#1270 def listeners; end # Dispatch enter and leave events for AliasGlobalVariableNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1260 + # source://prism//lib/prism/dispatcher.rb#1277 def visit_alias_global_variable_node(node); end # Dispatch enter and leave events for AliasMethodNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1266 + # source://prism//lib/prism/dispatcher.rb#1283 def visit_alias_method_node(node); end # Dispatch enter and leave events for AlternationPatternNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1272 + # source://prism//lib/prism/dispatcher.rb#1289 def visit_alternation_pattern_node(node); end # Dispatch enter and leave events for AndNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1278 + # source://prism//lib/prism/dispatcher.rb#1295 def visit_and_node(node); end # Dispatch enter and leave events for ArgumentsNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1284 + # source://prism//lib/prism/dispatcher.rb#1301 def visit_arguments_node(node); end # Dispatch enter and leave events for ArrayNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1290 + # source://prism//lib/prism/dispatcher.rb#1307 def visit_array_node(node); end # Dispatch enter and leave events for ArrayPatternNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1296 + # source://prism//lib/prism/dispatcher.rb#1313 def visit_array_pattern_node(node); end # Dispatch enter and leave events for AssocNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1302 + # source://prism//lib/prism/dispatcher.rb#1319 def visit_assoc_node(node); end # Dispatch enter and leave events for AssocSplatNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1308 + # source://prism//lib/prism/dispatcher.rb#1325 def visit_assoc_splat_node(node); end # Dispatch enter and leave events for BackReferenceReadNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1314 + # source://prism//lib/prism/dispatcher.rb#1331 def visit_back_reference_read_node(node); end # Dispatch enter and leave events for BeginNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1320 + # source://prism//lib/prism/dispatcher.rb#1337 def visit_begin_node(node); end # Dispatch enter and leave events for BlockArgumentNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1326 + # source://prism//lib/prism/dispatcher.rb#1343 def visit_block_argument_node(node); end # Dispatch enter and leave events for BlockLocalVariableNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1332 + # source://prism//lib/prism/dispatcher.rb#1349 def visit_block_local_variable_node(node); end # Dispatch enter and leave events for BlockNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1338 + # source://prism//lib/prism/dispatcher.rb#1355 def visit_block_node(node); end # Dispatch enter and leave events for BlockParameterNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1344 + # source://prism//lib/prism/dispatcher.rb#1361 def visit_block_parameter_node(node); end # Dispatch enter and leave events for BlockParametersNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1350 + # source://prism//lib/prism/dispatcher.rb#1367 def visit_block_parameters_node(node); end # Dispatch enter and leave events for BreakNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1356 + # source://prism//lib/prism/dispatcher.rb#1373 def visit_break_node(node); end # Dispatch enter and leave events for CallAndWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1362 + # source://prism//lib/prism/dispatcher.rb#1379 def visit_call_and_write_node(node); end # Dispatch enter and leave events for CallNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1368 + # source://prism//lib/prism/dispatcher.rb#1385 def visit_call_node(node); end # Dispatch enter and leave events for CallOperatorWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1374 + # source://prism//lib/prism/dispatcher.rb#1391 def visit_call_operator_write_node(node); end # Dispatch enter and leave events for CallOrWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1380 + # source://prism//lib/prism/dispatcher.rb#1397 def visit_call_or_write_node(node); end # Dispatch enter and leave events for CallTargetNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1386 + # source://prism//lib/prism/dispatcher.rb#1403 def visit_call_target_node(node); end # Dispatch enter and leave events for CapturePatternNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1392 + # source://prism//lib/prism/dispatcher.rb#1409 def visit_capture_pattern_node(node); end # Dispatch enter and leave events for CaseMatchNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1398 + # source://prism//lib/prism/dispatcher.rb#1415 def visit_case_match_node(node); end # Dispatch enter and leave events for CaseNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1404 + # source://prism//lib/prism/dispatcher.rb#1421 def visit_case_node(node); end # Dispatch enter and leave events for ClassNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1410 + # source://prism//lib/prism/dispatcher.rb#1427 def visit_class_node(node); end # Dispatch enter and leave events for ClassVariableAndWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1416 + # source://prism//lib/prism/dispatcher.rb#1433 def visit_class_variable_and_write_node(node); end # Dispatch enter and leave events for ClassVariableOperatorWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1422 + # source://prism//lib/prism/dispatcher.rb#1439 def visit_class_variable_operator_write_node(node); end # Dispatch enter and leave events for ClassVariableOrWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1428 + # source://prism//lib/prism/dispatcher.rb#1445 def visit_class_variable_or_write_node(node); end # Dispatch enter and leave events for ClassVariableReadNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1434 + # source://prism//lib/prism/dispatcher.rb#1451 def visit_class_variable_read_node(node); end # Dispatch enter and leave events for ClassVariableTargetNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1440 + # source://prism//lib/prism/dispatcher.rb#1457 def visit_class_variable_target_node(node); end # Dispatch enter and leave events for ClassVariableWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1446 + # source://prism//lib/prism/dispatcher.rb#1463 def visit_class_variable_write_node(node); end # Dispatch enter and leave events for ConstantAndWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1452 + # source://prism//lib/prism/dispatcher.rb#1469 def visit_constant_and_write_node(node); end # Dispatch enter and leave events for ConstantOperatorWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1458 + # source://prism//lib/prism/dispatcher.rb#1475 def visit_constant_operator_write_node(node); end # Dispatch enter and leave events for ConstantOrWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1464 + # source://prism//lib/prism/dispatcher.rb#1481 def visit_constant_or_write_node(node); end # Dispatch enter and leave events for ConstantPathAndWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1470 + # source://prism//lib/prism/dispatcher.rb#1487 def visit_constant_path_and_write_node(node); end # Dispatch enter and leave events for ConstantPathNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1476 + # source://prism//lib/prism/dispatcher.rb#1493 def visit_constant_path_node(node); end # Dispatch enter and leave events for ConstantPathOperatorWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1482 + # source://prism//lib/prism/dispatcher.rb#1499 def visit_constant_path_operator_write_node(node); end # Dispatch enter and leave events for ConstantPathOrWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1488 + # source://prism//lib/prism/dispatcher.rb#1505 def visit_constant_path_or_write_node(node); end # Dispatch enter and leave events for ConstantPathTargetNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1494 + # source://prism//lib/prism/dispatcher.rb#1511 def visit_constant_path_target_node(node); end # Dispatch enter and leave events for ConstantPathWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1500 + # source://prism//lib/prism/dispatcher.rb#1517 def visit_constant_path_write_node(node); end # Dispatch enter and leave events for ConstantReadNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1506 + # source://prism//lib/prism/dispatcher.rb#1523 def visit_constant_read_node(node); end # Dispatch enter and leave events for ConstantTargetNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1512 + # source://prism//lib/prism/dispatcher.rb#1529 def visit_constant_target_node(node); end # Dispatch enter and leave events for ConstantWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1518 + # source://prism//lib/prism/dispatcher.rb#1535 def visit_constant_write_node(node); end # Dispatch enter and leave events for DefNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1524 + # source://prism//lib/prism/dispatcher.rb#1541 def visit_def_node(node); end # Dispatch enter and leave events for DefinedNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1530 + # source://prism//lib/prism/dispatcher.rb#1547 def visit_defined_node(node); end # Dispatch enter and leave events for ElseNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1536 + # source://prism//lib/prism/dispatcher.rb#1553 def visit_else_node(node); end # Dispatch enter and leave events for EmbeddedStatementsNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1542 + # source://prism//lib/prism/dispatcher.rb#1559 def visit_embedded_statements_node(node); end # Dispatch enter and leave events for EmbeddedVariableNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1548 + # source://prism//lib/prism/dispatcher.rb#1565 def visit_embedded_variable_node(node); end # Dispatch enter and leave events for EnsureNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1554 + # source://prism//lib/prism/dispatcher.rb#1571 def visit_ensure_node(node); end # Dispatch enter and leave events for FalseNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1560 + # source://prism//lib/prism/dispatcher.rb#1577 def visit_false_node(node); end # Dispatch enter and leave events for FindPatternNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1566 + # source://prism//lib/prism/dispatcher.rb#1583 def visit_find_pattern_node(node); end # Dispatch enter and leave events for FlipFlopNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1572 + # source://prism//lib/prism/dispatcher.rb#1589 def visit_flip_flop_node(node); end # Dispatch enter and leave events for FloatNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1578 + # source://prism//lib/prism/dispatcher.rb#1595 def visit_float_node(node); end # Dispatch enter and leave events for ForNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1584 + # source://prism//lib/prism/dispatcher.rb#1601 def visit_for_node(node); end # Dispatch enter and leave events for ForwardingArgumentsNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1590 + # source://prism//lib/prism/dispatcher.rb#1607 def visit_forwarding_arguments_node(node); end # Dispatch enter and leave events for ForwardingParameterNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1596 + # source://prism//lib/prism/dispatcher.rb#1613 def visit_forwarding_parameter_node(node); end # Dispatch enter and leave events for ForwardingSuperNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1602 + # source://prism//lib/prism/dispatcher.rb#1619 def visit_forwarding_super_node(node); end # Dispatch enter and leave events for GlobalVariableAndWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1608 + # source://prism//lib/prism/dispatcher.rb#1625 def visit_global_variable_and_write_node(node); end # Dispatch enter and leave events for GlobalVariableOperatorWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1614 + # source://prism//lib/prism/dispatcher.rb#1631 def visit_global_variable_operator_write_node(node); end # Dispatch enter and leave events for GlobalVariableOrWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1620 + # source://prism//lib/prism/dispatcher.rb#1637 def visit_global_variable_or_write_node(node); end # Dispatch enter and leave events for GlobalVariableReadNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1626 + # source://prism//lib/prism/dispatcher.rb#1643 def visit_global_variable_read_node(node); end # Dispatch enter and leave events for GlobalVariableTargetNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1632 + # source://prism//lib/prism/dispatcher.rb#1649 def visit_global_variable_target_node(node); end # Dispatch enter and leave events for GlobalVariableWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1638 + # source://prism//lib/prism/dispatcher.rb#1655 def visit_global_variable_write_node(node); end # Dispatch enter and leave events for HashNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1644 + # source://prism//lib/prism/dispatcher.rb#1661 def visit_hash_node(node); end # Dispatch enter and leave events for HashPatternNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1650 + # source://prism//lib/prism/dispatcher.rb#1667 def visit_hash_pattern_node(node); end # Dispatch enter and leave events for IfNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1656 + # source://prism//lib/prism/dispatcher.rb#1673 def visit_if_node(node); end # Dispatch enter and leave events for ImaginaryNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1662 + # source://prism//lib/prism/dispatcher.rb#1679 def visit_imaginary_node(node); end # Dispatch enter and leave events for ImplicitNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1668 + # source://prism//lib/prism/dispatcher.rb#1685 def visit_implicit_node(node); end # Dispatch enter and leave events for ImplicitRestNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1674 + # source://prism//lib/prism/dispatcher.rb#1691 def visit_implicit_rest_node(node); end # Dispatch enter and leave events for InNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1680 + # source://prism//lib/prism/dispatcher.rb#1697 def visit_in_node(node); end # Dispatch enter and leave events for IndexAndWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1686 + # source://prism//lib/prism/dispatcher.rb#1703 def visit_index_and_write_node(node); end # Dispatch enter and leave events for IndexOperatorWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1692 + # source://prism//lib/prism/dispatcher.rb#1709 def visit_index_operator_write_node(node); end # Dispatch enter and leave events for IndexOrWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1698 + # source://prism//lib/prism/dispatcher.rb#1715 def visit_index_or_write_node(node); end # Dispatch enter and leave events for IndexTargetNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1704 + # source://prism//lib/prism/dispatcher.rb#1721 def visit_index_target_node(node); end # Dispatch enter and leave events for InstanceVariableAndWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1710 + # source://prism//lib/prism/dispatcher.rb#1727 def visit_instance_variable_and_write_node(node); end # Dispatch enter and leave events for InstanceVariableOperatorWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1716 + # source://prism//lib/prism/dispatcher.rb#1733 def visit_instance_variable_operator_write_node(node); end # Dispatch enter and leave events for InstanceVariableOrWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1722 + # source://prism//lib/prism/dispatcher.rb#1739 def visit_instance_variable_or_write_node(node); end # Dispatch enter and leave events for InstanceVariableReadNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1728 + # source://prism//lib/prism/dispatcher.rb#1745 def visit_instance_variable_read_node(node); end # Dispatch enter and leave events for InstanceVariableTargetNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1734 + # source://prism//lib/prism/dispatcher.rb#1751 def visit_instance_variable_target_node(node); end # Dispatch enter and leave events for InstanceVariableWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1740 + # source://prism//lib/prism/dispatcher.rb#1757 def visit_instance_variable_write_node(node); end # Dispatch enter and leave events for IntegerNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1746 + # source://prism//lib/prism/dispatcher.rb#1763 def visit_integer_node(node); end # Dispatch enter and leave events for InterpolatedMatchLastLineNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1752 + # source://prism//lib/prism/dispatcher.rb#1769 def visit_interpolated_match_last_line_node(node); end # Dispatch enter and leave events for InterpolatedRegularExpressionNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1758 + # source://prism//lib/prism/dispatcher.rb#1775 def visit_interpolated_regular_expression_node(node); end # Dispatch enter and leave events for InterpolatedStringNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1764 + # source://prism//lib/prism/dispatcher.rb#1781 def visit_interpolated_string_node(node); end # Dispatch enter and leave events for InterpolatedSymbolNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1770 + # source://prism//lib/prism/dispatcher.rb#1787 def visit_interpolated_symbol_node(node); end # Dispatch enter and leave events for InterpolatedXStringNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1776 + # source://prism//lib/prism/dispatcher.rb#1793 def visit_interpolated_x_string_node(node); end + # Dispatch enter and leave events for ItParametersNode nodes. + # + # source://prism//lib/prism/dispatcher.rb#1799 + def visit_it_parameters_node(node); end + # Dispatch enter and leave events for KeywordHashNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1782 + # source://prism//lib/prism/dispatcher.rb#1805 def visit_keyword_hash_node(node); end # Dispatch enter and leave events for KeywordRestParameterNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1788 + # source://prism//lib/prism/dispatcher.rb#1811 def visit_keyword_rest_parameter_node(node); end # Dispatch enter and leave events for LambdaNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1794 + # source://prism//lib/prism/dispatcher.rb#1817 def visit_lambda_node(node); end # Dispatch enter and leave events for LocalVariableAndWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1800 + # source://prism//lib/prism/dispatcher.rb#1823 def visit_local_variable_and_write_node(node); end # Dispatch enter and leave events for LocalVariableOperatorWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1806 + # source://prism//lib/prism/dispatcher.rb#1829 def visit_local_variable_operator_write_node(node); end # Dispatch enter and leave events for LocalVariableOrWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1812 + # source://prism//lib/prism/dispatcher.rb#1835 def visit_local_variable_or_write_node(node); end # Dispatch enter and leave events for LocalVariableReadNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1818 + # source://prism//lib/prism/dispatcher.rb#1841 def visit_local_variable_read_node(node); end # Dispatch enter and leave events for LocalVariableTargetNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1824 + # source://prism//lib/prism/dispatcher.rb#1847 def visit_local_variable_target_node(node); end # Dispatch enter and leave events for LocalVariableWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1830 + # source://prism//lib/prism/dispatcher.rb#1853 def visit_local_variable_write_node(node); end # Dispatch enter and leave events for MatchLastLineNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1836 + # source://prism//lib/prism/dispatcher.rb#1859 def visit_match_last_line_node(node); end # Dispatch enter and leave events for MatchPredicateNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1842 + # source://prism//lib/prism/dispatcher.rb#1865 def visit_match_predicate_node(node); end # Dispatch enter and leave events for MatchRequiredNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1848 + # source://prism//lib/prism/dispatcher.rb#1871 def visit_match_required_node(node); end # Dispatch enter and leave events for MatchWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1854 + # source://prism//lib/prism/dispatcher.rb#1877 def visit_match_write_node(node); end # Dispatch enter and leave events for MissingNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1860 + # source://prism//lib/prism/dispatcher.rb#1883 def visit_missing_node(node); end # Dispatch enter and leave events for ModuleNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1866 + # source://prism//lib/prism/dispatcher.rb#1889 def visit_module_node(node); end # Dispatch enter and leave events for MultiTargetNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1872 + # source://prism//lib/prism/dispatcher.rb#1895 def visit_multi_target_node(node); end # Dispatch enter and leave events for MultiWriteNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1878 + # source://prism//lib/prism/dispatcher.rb#1901 def visit_multi_write_node(node); end # Dispatch enter and leave events for NextNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1884 + # source://prism//lib/prism/dispatcher.rb#1907 def visit_next_node(node); end # Dispatch enter and leave events for NilNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1890 + # source://prism//lib/prism/dispatcher.rb#1913 def visit_nil_node(node); end # Dispatch enter and leave events for NoKeywordsParameterNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1896 + # source://prism//lib/prism/dispatcher.rb#1919 def visit_no_keywords_parameter_node(node); end # Dispatch enter and leave events for NumberedParametersNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1902 + # source://prism//lib/prism/dispatcher.rb#1925 def visit_numbered_parameters_node(node); end # Dispatch enter and leave events for NumberedReferenceReadNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1908 + # source://prism//lib/prism/dispatcher.rb#1931 def visit_numbered_reference_read_node(node); end # Dispatch enter and leave events for OptionalKeywordParameterNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1914 + # source://prism//lib/prism/dispatcher.rb#1937 def visit_optional_keyword_parameter_node(node); end # Dispatch enter and leave events for OptionalParameterNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1920 + # source://prism//lib/prism/dispatcher.rb#1943 def visit_optional_parameter_node(node); end # Dispatch enter and leave events for OrNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1926 + # source://prism//lib/prism/dispatcher.rb#1949 def visit_or_node(node); end # Dispatch enter and leave events for ParametersNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1932 + # source://prism//lib/prism/dispatcher.rb#1955 def visit_parameters_node(node); end # Dispatch enter and leave events for ParenthesesNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1938 + # source://prism//lib/prism/dispatcher.rb#1961 def visit_parentheses_node(node); end # Dispatch enter and leave events for PinnedExpressionNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1944 + # source://prism//lib/prism/dispatcher.rb#1967 def visit_pinned_expression_node(node); end # Dispatch enter and leave events for PinnedVariableNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1950 + # source://prism//lib/prism/dispatcher.rb#1973 def visit_pinned_variable_node(node); end # Dispatch enter and leave events for PostExecutionNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1956 + # source://prism//lib/prism/dispatcher.rb#1979 def visit_post_execution_node(node); end # Dispatch enter and leave events for PreExecutionNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1962 + # source://prism//lib/prism/dispatcher.rb#1985 def visit_pre_execution_node(node); end # Dispatch enter and leave events for ProgramNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1968 + # source://prism//lib/prism/dispatcher.rb#1991 def visit_program_node(node); end # Dispatch enter and leave events for RangeNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1974 + # source://prism//lib/prism/dispatcher.rb#1997 def visit_range_node(node); end # Dispatch enter and leave events for RationalNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1980 + # source://prism//lib/prism/dispatcher.rb#2003 def visit_rational_node(node); end # Dispatch enter and leave events for RedoNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1986 + # source://prism//lib/prism/dispatcher.rb#2009 def visit_redo_node(node); end # Dispatch enter and leave events for RegularExpressionNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1992 + # source://prism//lib/prism/dispatcher.rb#2015 def visit_regular_expression_node(node); end # Dispatch enter and leave events for RequiredKeywordParameterNode nodes. # - # source://prism//lib/prism/dispatcher.rb#1998 + # source://prism//lib/prism/dispatcher.rb#2021 def visit_required_keyword_parameter_node(node); end # Dispatch enter and leave events for RequiredParameterNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2004 + # source://prism//lib/prism/dispatcher.rb#2027 def visit_required_parameter_node(node); end # Dispatch enter and leave events for RescueModifierNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2010 + # source://prism//lib/prism/dispatcher.rb#2033 def visit_rescue_modifier_node(node); end # Dispatch enter and leave events for RescueNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2016 + # source://prism//lib/prism/dispatcher.rb#2039 def visit_rescue_node(node); end # Dispatch enter and leave events for RestParameterNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2022 + # source://prism//lib/prism/dispatcher.rb#2045 def visit_rest_parameter_node(node); end # Dispatch enter and leave events for RetryNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2028 + # source://prism//lib/prism/dispatcher.rb#2051 def visit_retry_node(node); end # Dispatch enter and leave events for ReturnNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2034 + # source://prism//lib/prism/dispatcher.rb#2057 def visit_return_node(node); end # Dispatch enter and leave events for SelfNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2040 + # source://prism//lib/prism/dispatcher.rb#2063 def visit_self_node(node); end + # Dispatch enter and leave events for ShareableConstantNode nodes. + # + # source://prism//lib/prism/dispatcher.rb#2069 + def visit_shareable_constant_node(node); end + # Dispatch enter and leave events for SingletonClassNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2046 + # source://prism//lib/prism/dispatcher.rb#2075 def visit_singleton_class_node(node); end # Dispatch enter and leave events for SourceEncodingNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2052 + # source://prism//lib/prism/dispatcher.rb#2081 def visit_source_encoding_node(node); end # Dispatch enter and leave events for SourceFileNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2058 + # source://prism//lib/prism/dispatcher.rb#2087 def visit_source_file_node(node); end # Dispatch enter and leave events for SourceLineNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2064 + # source://prism//lib/prism/dispatcher.rb#2093 def visit_source_line_node(node); end # Dispatch enter and leave events for SplatNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2070 + # source://prism//lib/prism/dispatcher.rb#2099 def visit_splat_node(node); end # Dispatch enter and leave events for StatementsNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2076 + # source://prism//lib/prism/dispatcher.rb#2105 def visit_statements_node(node); end # Dispatch enter and leave events for StringNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2082 + # source://prism//lib/prism/dispatcher.rb#2111 def visit_string_node(node); end # Dispatch enter and leave events for SuperNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2088 + # source://prism//lib/prism/dispatcher.rb#2117 def visit_super_node(node); end # Dispatch enter and leave events for SymbolNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2094 + # source://prism//lib/prism/dispatcher.rb#2123 def visit_symbol_node(node); end # Dispatch enter and leave events for TrueNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2100 + # source://prism//lib/prism/dispatcher.rb#2129 def visit_true_node(node); end # Dispatch enter and leave events for UndefNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2106 + # source://prism//lib/prism/dispatcher.rb#2135 def visit_undef_node(node); end # Dispatch enter and leave events for UnlessNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2112 + # source://prism//lib/prism/dispatcher.rb#2141 def visit_unless_node(node); end # Dispatch enter and leave events for UntilNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2118 + # source://prism//lib/prism/dispatcher.rb#2147 def visit_until_node(node); end # Dispatch enter and leave events for WhenNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2124 + # source://prism//lib/prism/dispatcher.rb#2153 def visit_when_node(node); end # Dispatch enter and leave events for WhileNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2130 + # source://prism//lib/prism/dispatcher.rb#2159 def visit_while_node(node); end # Dispatch enter and leave events for XStringNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2136 + # source://prism//lib/prism/dispatcher.rb#2165 def visit_x_string_node(node); end # Dispatch enter and leave events for YieldNode nodes. # - # source://prism//lib/prism/dispatcher.rb#2142 + # source://prism//lib/prism/dispatcher.rb#2171 def visit_yield_node(node); end end # This visitor provides the ability to call Node#to_dot, which converts a # subtree into a graphviz dot graph. # -# source://prism//lib/prism/dot_visitor.rb#13 +# source://prism//lib/prism/dot_visitor.rb#14 class Prism::DotVisitor < ::Prism::Visitor # Initialize a new dot visitor. # # @return [DotVisitor] a new instance of DotVisitor # - # source://prism//lib/prism/dot_visitor.rb#105 + # source://prism//lib/prism/dot_visitor.rb#106 def initialize; end # The digraph that is being built. # - # source://prism//lib/prism/dot_visitor.rb#102 + # source://prism//lib/prism/dot_visitor.rb#103 def digraph; end # Convert this visitor into a graphviz dot graph string. # - # source://prism//lib/prism/dot_visitor.rb#110 + # source://prism//lib/prism/dot_visitor.rb#111 def to_dot; end # Visit a AliasGlobalVariableNode node. # - # source://prism//lib/prism/dot_visitor.rb#115 + # source://prism//lib/prism/dot_visitor.rb#116 def visit_alias_global_variable_node(node); end # Visit a AliasMethodNode node. # - # source://prism//lib/prism/dot_visitor.rb#140 + # source://prism//lib/prism/dot_visitor.rb#141 def visit_alias_method_node(node); end # Visit a AlternationPatternNode node. # - # source://prism//lib/prism/dot_visitor.rb#165 + # source://prism//lib/prism/dot_visitor.rb#166 def visit_alternation_pattern_node(node); end # Visit a AndNode node. # - # source://prism//lib/prism/dot_visitor.rb#190 + # source://prism//lib/prism/dot_visitor.rb#191 def visit_and_node(node); end # Visit a ArgumentsNode node. # - # source://prism//lib/prism/dot_visitor.rb#215 + # source://prism//lib/prism/dot_visitor.rb#216 def visit_arguments_node(node); end # Visit a ArrayNode node. # - # source://prism//lib/prism/dot_visitor.rb#245 + # source://prism//lib/prism/dot_visitor.rb#246 def visit_array_node(node); end # Visit a ArrayPatternNode node. # - # source://prism//lib/prism/dot_visitor.rb#285 + # source://prism//lib/prism/dot_visitor.rb#286 def visit_array_pattern_node(node); end # Visit a AssocNode node. # - # source://prism//lib/prism/dot_visitor.rb#347 + # source://prism//lib/prism/dot_visitor.rb#348 def visit_assoc_node(node); end # Visit a AssocSplatNode node. # - # source://prism//lib/prism/dot_visitor.rb#374 + # source://prism//lib/prism/dot_visitor.rb#375 def visit_assoc_splat_node(node); end # Visit a BackReferenceReadNode node. # - # source://prism//lib/prism/dot_visitor.rb#397 + # source://prism//lib/prism/dot_visitor.rb#398 def visit_back_reference_read_node(node); end # Visit a BeginNode node. # - # source://prism//lib/prism/dot_visitor.rb#414 + # source://prism//lib/prism/dot_visitor.rb#415 def visit_begin_node(node); end # Visit a BlockArgumentNode node. # - # source://prism//lib/prism/dot_visitor.rb#462 + # source://prism//lib/prism/dot_visitor.rb#463 def visit_block_argument_node(node); end # Visit a BlockLocalVariableNode node. # - # source://prism//lib/prism/dot_visitor.rb#485 + # source://prism//lib/prism/dot_visitor.rb#486 def visit_block_local_variable_node(node); end # Visit a BlockNode node. # - # source://prism//lib/prism/dot_visitor.rb#505 + # source://prism//lib/prism/dot_visitor.rb#506 def visit_block_node(node); end # Visit a BlockParameterNode node. # - # source://prism//lib/prism/dot_visitor.rb#540 + # source://prism//lib/prism/dot_visitor.rb#541 def visit_block_parameter_node(node); end # Visit a BlockParametersNode node. # - # source://prism//lib/prism/dot_visitor.rb#568 + # source://prism//lib/prism/dot_visitor.rb#569 def visit_block_parameters_node(node); end # Visit a BreakNode node. # - # source://prism//lib/prism/dot_visitor.rb#611 + # source://prism//lib/prism/dot_visitor.rb#612 def visit_break_node(node); end # Visit a CallAndWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#634 + # source://prism//lib/prism/dot_visitor.rb#635 def visit_call_and_write_node(node); end # Visit a CallNode node. # - # source://prism//lib/prism/dot_visitor.rb#680 + # source://prism//lib/prism/dot_visitor.rb#681 def visit_call_node(node); end # Visit a CallOperatorWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#738 + # source://prism//lib/prism/dot_visitor.rb#739 def visit_call_operator_write_node(node); end # Visit a CallOrWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#787 + # source://prism//lib/prism/dot_visitor.rb#788 def visit_call_or_write_node(node); end # Visit a CallTargetNode node. # - # source://prism//lib/prism/dot_visitor.rb#833 + # source://prism//lib/prism/dot_visitor.rb#834 def visit_call_target_node(node); end # Visit a CapturePatternNode node. # - # source://prism//lib/prism/dot_visitor.rb#863 + # source://prism//lib/prism/dot_visitor.rb#864 def visit_capture_pattern_node(node); end # Visit a CaseMatchNode node. # - # source://prism//lib/prism/dot_visitor.rb#888 + # source://prism//lib/prism/dot_visitor.rb#889 def visit_case_match_node(node); end # Visit a CaseNode node. # - # source://prism//lib/prism/dot_visitor.rb#933 + # source://prism//lib/prism/dot_visitor.rb#934 def visit_case_node(node); end # Visit a ClassNode node. # - # source://prism//lib/prism/dot_visitor.rb#978 + # source://prism//lib/prism/dot_visitor.rb#979 def visit_class_node(node); end # Visit a ClassVariableAndWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1025 + # source://prism//lib/prism/dot_visitor.rb#1026 def visit_class_variable_and_write_node(node); end # Visit a ClassVariableOperatorWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1052 + # source://prism//lib/prism/dot_visitor.rb#1053 def visit_class_variable_operator_write_node(node); end # Visit a ClassVariableOrWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1082 + # source://prism//lib/prism/dot_visitor.rb#1083 def visit_class_variable_or_write_node(node); end # Visit a ClassVariableReadNode node. # - # source://prism//lib/prism/dot_visitor.rb#1109 + # source://prism//lib/prism/dot_visitor.rb#1110 def visit_class_variable_read_node(node); end # Visit a ClassVariableTargetNode node. # - # source://prism//lib/prism/dot_visitor.rb#1126 + # source://prism//lib/prism/dot_visitor.rb#1127 def visit_class_variable_target_node(node); end # Visit a ClassVariableWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1143 + # source://prism//lib/prism/dot_visitor.rb#1144 def visit_class_variable_write_node(node); end # Visit a ConstantAndWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1172 + # source://prism//lib/prism/dot_visitor.rb#1171 def visit_constant_and_write_node(node); end # Visit a ConstantOperatorWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1199 + # source://prism//lib/prism/dot_visitor.rb#1198 def visit_constant_operator_write_node(node); end # Visit a ConstantOrWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1229 + # source://prism//lib/prism/dot_visitor.rb#1228 def visit_constant_or_write_node(node); end # Visit a ConstantPathAndWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1256 + # source://prism//lib/prism/dot_visitor.rb#1255 def visit_constant_path_and_write_node(node); end # Visit a ConstantPathNode node. # - # source://prism//lib/prism/dot_visitor.rb#1281 + # source://prism//lib/prism/dot_visitor.rb#1280 def visit_constant_path_node(node); end # Visit a ConstantPathOperatorWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1308 + # source://prism//lib/prism/dot_visitor.rb#1307 def visit_constant_path_operator_write_node(node); end # Visit a ConstantPathOrWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1336 + # source://prism//lib/prism/dot_visitor.rb#1335 def visit_constant_path_or_write_node(node); end # Visit a ConstantPathTargetNode node. # - # source://prism//lib/prism/dot_visitor.rb#1361 + # source://prism//lib/prism/dot_visitor.rb#1360 def visit_constant_path_target_node(node); end # Visit a ConstantPathWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1388 + # source://prism//lib/prism/dot_visitor.rb#1387 def visit_constant_path_write_node(node); end # Visit a ConstantReadNode node. # - # source://prism//lib/prism/dot_visitor.rb#1413 + # source://prism//lib/prism/dot_visitor.rb#1412 def visit_constant_read_node(node); end # Visit a ConstantTargetNode node. # - # source://prism//lib/prism/dot_visitor.rb#1430 + # source://prism//lib/prism/dot_visitor.rb#1429 def visit_constant_target_node(node); end # Visit a ConstantWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1447 + # source://prism//lib/prism/dot_visitor.rb#1446 def visit_constant_write_node(node); end # Visit a DefNode node. # - # source://prism//lib/prism/dot_visitor.rb#1474 + # source://prism//lib/prism/dot_visitor.rb#1473 def visit_def_node(node); end # Visit a DefinedNode node. # - # source://prism//lib/prism/dot_visitor.rb#1543 + # source://prism//lib/prism/dot_visitor.rb#1542 def visit_defined_node(node); end # Visit a ElseNode node. # - # source://prism//lib/prism/dot_visitor.rb#1574 + # source://prism//lib/prism/dot_visitor.rb#1573 def visit_else_node(node); end # Visit a EmbeddedStatementsNode node. # - # source://prism//lib/prism/dot_visitor.rb#1602 + # source://prism//lib/prism/dot_visitor.rb#1601 def visit_embedded_statements_node(node); end # Visit a EmbeddedVariableNode node. # - # source://prism//lib/prism/dot_visitor.rb#1628 + # source://prism//lib/prism/dot_visitor.rb#1627 def visit_embedded_variable_node(node); end # Visit a EnsureNode node. # - # source://prism//lib/prism/dot_visitor.rb#1649 + # source://prism//lib/prism/dot_visitor.rb#1648 def visit_ensure_node(node); end # Visit a FalseNode node. # - # source://prism//lib/prism/dot_visitor.rb#1675 + # source://prism//lib/prism/dot_visitor.rb#1674 def visit_false_node(node); end # Visit a FindPatternNode node. # - # source://prism//lib/prism/dot_visitor.rb#1689 + # source://prism//lib/prism/dot_visitor.rb#1688 def visit_find_pattern_node(node); end # Visit a FlipFlopNode node. # - # source://prism//lib/prism/dot_visitor.rb#1740 + # source://prism//lib/prism/dot_visitor.rb#1739 def visit_flip_flop_node(node); end # Visit a FloatNode node. # - # source://prism//lib/prism/dot_visitor.rb#1772 + # source://prism//lib/prism/dot_visitor.rb#1771 def visit_float_node(node); end # Visit a ForNode node. # - # source://prism//lib/prism/dot_visitor.rb#1786 + # source://prism//lib/prism/dot_visitor.rb#1788 def visit_for_node(node); end # Visit a ForwardingArgumentsNode node. # - # source://prism//lib/prism/dot_visitor.rb#1828 + # source://prism//lib/prism/dot_visitor.rb#1830 def visit_forwarding_arguments_node(node); end # Visit a ForwardingParameterNode node. # - # source://prism//lib/prism/dot_visitor.rb#1842 + # source://prism//lib/prism/dot_visitor.rb#1844 def visit_forwarding_parameter_node(node); end # Visit a ForwardingSuperNode node. # - # source://prism//lib/prism/dot_visitor.rb#1856 + # source://prism//lib/prism/dot_visitor.rb#1858 def visit_forwarding_super_node(node); end # Visit a GlobalVariableAndWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1876 + # source://prism//lib/prism/dot_visitor.rb#1878 def visit_global_variable_and_write_node(node); end # Visit a GlobalVariableOperatorWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1903 + # source://prism//lib/prism/dot_visitor.rb#1905 def visit_global_variable_operator_write_node(node); end # Visit a GlobalVariableOrWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1933 + # source://prism//lib/prism/dot_visitor.rb#1935 def visit_global_variable_or_write_node(node); end # Visit a GlobalVariableReadNode node. # - # source://prism//lib/prism/dot_visitor.rb#1960 + # source://prism//lib/prism/dot_visitor.rb#1962 def visit_global_variable_read_node(node); end # Visit a GlobalVariableTargetNode node. # - # source://prism//lib/prism/dot_visitor.rb#1977 + # source://prism//lib/prism/dot_visitor.rb#1979 def visit_global_variable_target_node(node); end # Visit a GlobalVariableWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#1994 + # source://prism//lib/prism/dot_visitor.rb#1996 def visit_global_variable_write_node(node); end # Visit a HashNode node. # - # source://prism//lib/prism/dot_visitor.rb#2021 + # source://prism//lib/prism/dot_visitor.rb#2023 def visit_hash_node(node); end # Visit a HashPatternNode node. # - # source://prism//lib/prism/dot_visitor.rb#2054 + # source://prism//lib/prism/dot_visitor.rb#2056 def visit_hash_pattern_node(node); end # Visit a IfNode node. # - # source://prism//lib/prism/dot_visitor.rb#2103 + # source://prism//lib/prism/dot_visitor.rb#2105 def visit_if_node(node); end # Visit a ImaginaryNode node. # - # source://prism//lib/prism/dot_visitor.rb#2148 + # source://prism//lib/prism/dot_visitor.rb#2150 def visit_imaginary_node(node); end # Visit a ImplicitNode node. # - # source://prism//lib/prism/dot_visitor.rb#2166 + # source://prism//lib/prism/dot_visitor.rb#2168 def visit_implicit_node(node); end # Visit a ImplicitRestNode node. # - # source://prism//lib/prism/dot_visitor.rb#2184 + # source://prism//lib/prism/dot_visitor.rb#2186 def visit_implicit_rest_node(node); end # Visit a InNode node. # - # source://prism//lib/prism/dot_visitor.rb#2198 + # source://prism//lib/prism/dot_visitor.rb#2200 def visit_in_node(node); end # Visit a IndexAndWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#2230 + # source://prism//lib/prism/dot_visitor.rb#2232 def visit_index_and_write_node(node); end # Visit a IndexOperatorWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#2283 + # source://prism//lib/prism/dot_visitor.rb#2285 def visit_index_operator_write_node(node); end # Visit a IndexOrWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#2339 + # source://prism//lib/prism/dot_visitor.rb#2341 def visit_index_or_write_node(node); end # Visit a IndexTargetNode node. # - # source://prism//lib/prism/dot_visitor.rb#2392 + # source://prism//lib/prism/dot_visitor.rb#2394 def visit_index_target_node(node); end # Visit a InstanceVariableAndWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#2431 + # source://prism//lib/prism/dot_visitor.rb#2433 def visit_instance_variable_and_write_node(node); end # Visit a InstanceVariableOperatorWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#2458 + # source://prism//lib/prism/dot_visitor.rb#2460 def visit_instance_variable_operator_write_node(node); end # Visit a InstanceVariableOrWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#2488 + # source://prism//lib/prism/dot_visitor.rb#2490 def visit_instance_variable_or_write_node(node); end # Visit a InstanceVariableReadNode node. # - # source://prism//lib/prism/dot_visitor.rb#2515 + # source://prism//lib/prism/dot_visitor.rb#2517 def visit_instance_variable_read_node(node); end # Visit a InstanceVariableTargetNode node. # - # source://prism//lib/prism/dot_visitor.rb#2532 + # source://prism//lib/prism/dot_visitor.rb#2534 def visit_instance_variable_target_node(node); end # Visit a InstanceVariableWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#2549 + # source://prism//lib/prism/dot_visitor.rb#2551 def visit_instance_variable_write_node(node); end # Visit a IntegerNode node. # - # source://prism//lib/prism/dot_visitor.rb#2576 + # source://prism//lib/prism/dot_visitor.rb#2578 def visit_integer_node(node); end # Visit a InterpolatedMatchLastLineNode node. # - # source://prism//lib/prism/dot_visitor.rb#2593 + # source://prism//lib/prism/dot_visitor.rb#2598 def visit_interpolated_match_last_line_node(node); end # Visit a InterpolatedRegularExpressionNode node. # - # source://prism//lib/prism/dot_visitor.rb#2629 + # source://prism//lib/prism/dot_visitor.rb#2634 def visit_interpolated_regular_expression_node(node); end # Visit a InterpolatedStringNode node. # - # source://prism//lib/prism/dot_visitor.rb#2665 + # source://prism//lib/prism/dot_visitor.rb#2670 def visit_interpolated_string_node(node); end # Visit a InterpolatedSymbolNode node. # - # source://prism//lib/prism/dot_visitor.rb#2702 + # source://prism//lib/prism/dot_visitor.rb#2710 def visit_interpolated_symbol_node(node); end # Visit a InterpolatedXStringNode node. # - # source://prism//lib/prism/dot_visitor.rb#2739 + # source://prism//lib/prism/dot_visitor.rb#2747 def visit_interpolated_x_string_node(node); end + # Visit a ItParametersNode node. + # + # source://prism//lib/prism/dot_visitor.rb#2780 + def visit_it_parameters_node(node); end + # Visit a KeywordHashNode node. # - # source://prism//lib/prism/dot_visitor.rb#2772 + # source://prism//lib/prism/dot_visitor.rb#2794 def visit_keyword_hash_node(node); end # Visit a KeywordRestParameterNode node. # - # source://prism//lib/prism/dot_visitor.rb#2802 + # source://prism//lib/prism/dot_visitor.rb#2824 def visit_keyword_rest_parameter_node(node); end # Visit a LambdaNode node. # - # source://prism//lib/prism/dot_visitor.rb#2830 + # source://prism//lib/prism/dot_visitor.rb#2852 def visit_lambda_node(node); end # Visit a LocalVariableAndWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#2868 + # source://prism//lib/prism/dot_visitor.rb#2890 def visit_local_variable_and_write_node(node); end # Visit a LocalVariableOperatorWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#2898 + # source://prism//lib/prism/dot_visitor.rb#2920 def visit_local_variable_operator_write_node(node); end # Visit a LocalVariableOrWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#2931 + # source://prism//lib/prism/dot_visitor.rb#2953 def visit_local_variable_or_write_node(node); end # Visit a LocalVariableReadNode node. # - # source://prism//lib/prism/dot_visitor.rb#2961 + # source://prism//lib/prism/dot_visitor.rb#2983 def visit_local_variable_read_node(node); end # Visit a LocalVariableTargetNode node. # - # source://prism//lib/prism/dot_visitor.rb#2981 + # source://prism//lib/prism/dot_visitor.rb#3003 def visit_local_variable_target_node(node); end # Visit a LocalVariableWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#3001 + # source://prism//lib/prism/dot_visitor.rb#3023 def visit_local_variable_write_node(node); end # Visit a MatchLastLineNode node. # - # source://prism//lib/prism/dot_visitor.rb#3031 + # source://prism//lib/prism/dot_visitor.rb#3053 def visit_match_last_line_node(node); end # Visit a MatchPredicateNode node. # - # source://prism//lib/prism/dot_visitor.rb#3060 + # source://prism//lib/prism/dot_visitor.rb#3082 def visit_match_predicate_node(node); end # Visit a MatchRequiredNode node. # - # source://prism//lib/prism/dot_visitor.rb#3085 + # source://prism//lib/prism/dot_visitor.rb#3107 def visit_match_required_node(node); end # Visit a MatchWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#3110 + # source://prism//lib/prism/dot_visitor.rb#3132 def visit_match_write_node(node); end # Visit a MissingNode node. # - # source://prism//lib/prism/dot_visitor.rb#3141 + # source://prism//lib/prism/dot_visitor.rb#3163 def visit_missing_node(node); end # Visit a ModuleNode node. # - # source://prism//lib/prism/dot_visitor.rb#3155 + # source://prism//lib/prism/dot_visitor.rb#3177 def visit_module_node(node); end # Visit a MultiTargetNode node. # - # source://prism//lib/prism/dot_visitor.rb#3191 + # source://prism//lib/prism/dot_visitor.rb#3213 def visit_multi_target_node(node); end # Visit a MultiWriteNode node. # - # source://prism//lib/prism/dot_visitor.rb#3247 + # source://prism//lib/prism/dot_visitor.rb#3269 def visit_multi_write_node(node); end # Visit a NextNode node. # - # source://prism//lib/prism/dot_visitor.rb#3310 + # source://prism//lib/prism/dot_visitor.rb#3332 def visit_next_node(node); end # Visit a NilNode node. # - # source://prism//lib/prism/dot_visitor.rb#3333 + # source://prism//lib/prism/dot_visitor.rb#3355 def visit_nil_node(node); end # Visit a NoKeywordsParameterNode node. # - # source://prism//lib/prism/dot_visitor.rb#3347 + # source://prism//lib/prism/dot_visitor.rb#3369 def visit_no_keywords_parameter_node(node); end # Visit a NumberedParametersNode node. # - # source://prism//lib/prism/dot_visitor.rb#3367 + # source://prism//lib/prism/dot_visitor.rb#3389 def visit_numbered_parameters_node(node); end # Visit a NumberedReferenceReadNode node. # - # source://prism//lib/prism/dot_visitor.rb#3384 + # source://prism//lib/prism/dot_visitor.rb#3406 def visit_numbered_reference_read_node(node); end # Visit a OptionalKeywordParameterNode node. # - # source://prism//lib/prism/dot_visitor.rb#3401 + # source://prism//lib/prism/dot_visitor.rb#3423 def visit_optional_keyword_parameter_node(node); end # Visit a OptionalParameterNode node. # - # source://prism//lib/prism/dot_visitor.rb#3428 + # source://prism//lib/prism/dot_visitor.rb#3450 def visit_optional_parameter_node(node); end # Visit a OrNode node. # - # source://prism//lib/prism/dot_visitor.rb#3458 + # source://prism//lib/prism/dot_visitor.rb#3480 def visit_or_node(node); end # Visit a ParametersNode node. # - # source://prism//lib/prism/dot_visitor.rb#3483 + # source://prism//lib/prism/dot_visitor.rb#3505 def visit_parameters_node(node); end # Visit a ParenthesesNode node. # - # source://prism//lib/prism/dot_visitor.rb#3567 + # source://prism//lib/prism/dot_visitor.rb#3589 def visit_parentheses_node(node); end # Visit a PinnedExpressionNode node. # - # source://prism//lib/prism/dot_visitor.rb#3593 + # source://prism//lib/prism/dot_visitor.rb#3615 def visit_pinned_expression_node(node); end # Visit a PinnedVariableNode node. # - # source://prism//lib/prism/dot_visitor.rb#3620 + # source://prism//lib/prism/dot_visitor.rb#3642 def visit_pinned_variable_node(node); end # Visit a PostExecutionNode node. # - # source://prism//lib/prism/dot_visitor.rb#3641 + # source://prism//lib/prism/dot_visitor.rb#3663 def visit_post_execution_node(node); end # Visit a PreExecutionNode node. # - # source://prism//lib/prism/dot_visitor.rb#3670 + # source://prism//lib/prism/dot_visitor.rb#3692 def visit_pre_execution_node(node); end # Visit a ProgramNode node. # - # source://prism//lib/prism/dot_visitor.rb#3699 + # source://prism//lib/prism/dot_visitor.rb#3721 def visit_program_node(node); end # Visit a RangeNode node. # - # source://prism//lib/prism/dot_visitor.rb#3720 + # source://prism//lib/prism/dot_visitor.rb#3742 def visit_range_node(node); end # Visit a RationalNode node. # - # source://prism//lib/prism/dot_visitor.rb#3752 + # source://prism//lib/prism/dot_visitor.rb#3774 def visit_rational_node(node); end # Visit a RedoNode node. # - # source://prism//lib/prism/dot_visitor.rb#3770 + # source://prism//lib/prism/dot_visitor.rb#3792 def visit_redo_node(node); end # Visit a RegularExpressionNode node. # - # source://prism//lib/prism/dot_visitor.rb#3784 + # source://prism//lib/prism/dot_visitor.rb#3806 def visit_regular_expression_node(node); end # Visit a RequiredKeywordParameterNode node. # - # source://prism//lib/prism/dot_visitor.rb#3813 + # source://prism//lib/prism/dot_visitor.rb#3835 def visit_required_keyword_parameter_node(node); end # Visit a RequiredParameterNode node. # - # source://prism//lib/prism/dot_visitor.rb#3836 + # source://prism//lib/prism/dot_visitor.rb#3858 def visit_required_parameter_node(node); end # Visit a RescueModifierNode node. # - # source://prism//lib/prism/dot_visitor.rb#3856 + # source://prism//lib/prism/dot_visitor.rb#3878 def visit_rescue_modifier_node(node); end # Visit a RescueNode node. # - # source://prism//lib/prism/dot_visitor.rb#3881 + # source://prism//lib/prism/dot_visitor.rb#3903 def visit_rescue_node(node); end # Visit a RestParameterNode node. # - # source://prism//lib/prism/dot_visitor.rb#3934 + # source://prism//lib/prism/dot_visitor.rb#3956 def visit_rest_parameter_node(node); end # Visit a RetryNode node. # - # source://prism//lib/prism/dot_visitor.rb#3962 + # source://prism//lib/prism/dot_visitor.rb#3984 def visit_retry_node(node); end # Visit a ReturnNode node. # - # source://prism//lib/prism/dot_visitor.rb#3976 + # source://prism//lib/prism/dot_visitor.rb#3998 def visit_return_node(node); end # Visit a SelfNode node. # - # source://prism//lib/prism/dot_visitor.rb#3999 + # source://prism//lib/prism/dot_visitor.rb#4021 def visit_self_node(node); end + # Visit a ShareableConstantNode node. + # + # source://prism//lib/prism/dot_visitor.rb#4035 + def visit_shareable_constant_node(node); end + # Visit a SingletonClassNode node. # - # source://prism//lib/prism/dot_visitor.rb#4013 + # source://prism//lib/prism/dot_visitor.rb#4056 def visit_singleton_class_node(node); end # Visit a SourceEncodingNode node. # - # source://prism//lib/prism/dot_visitor.rb#4049 + # source://prism//lib/prism/dot_visitor.rb#4092 def visit_source_encoding_node(node); end # Visit a SourceFileNode node. # - # source://prism//lib/prism/dot_visitor.rb#4063 + # source://prism//lib/prism/dot_visitor.rb#4106 def visit_source_file_node(node); end # Visit a SourceLineNode node. # - # source://prism//lib/prism/dot_visitor.rb#4080 + # source://prism//lib/prism/dot_visitor.rb#4126 def visit_source_line_node(node); end # Visit a SplatNode node. # - # source://prism//lib/prism/dot_visitor.rb#4094 + # source://prism//lib/prism/dot_visitor.rb#4140 def visit_splat_node(node); end # Visit a StatementsNode node. # - # source://prism//lib/prism/dot_visitor.rb#4117 + # source://prism//lib/prism/dot_visitor.rb#4163 def visit_statements_node(node); end # Visit a StringNode node. # - # source://prism//lib/prism/dot_visitor.rb#4144 + # source://prism//lib/prism/dot_visitor.rb#4190 def visit_string_node(node); end # Visit a SuperNode node. # - # source://prism//lib/prism/dot_visitor.rb#4177 + # source://prism//lib/prism/dot_visitor.rb#4223 def visit_super_node(node); end # Visit a SymbolNode node. # - # source://prism//lib/prism/dot_visitor.rb#4216 + # source://prism//lib/prism/dot_visitor.rb#4262 def visit_symbol_node(node); end # Visit a TrueNode node. # - # source://prism//lib/prism/dot_visitor.rb#4251 + # source://prism//lib/prism/dot_visitor.rb#4297 def visit_true_node(node); end # Visit a UndefNode node. # - # source://prism//lib/prism/dot_visitor.rb#4265 + # source://prism//lib/prism/dot_visitor.rb#4311 def visit_undef_node(node); end # Visit a UnlessNode node. # - # source://prism//lib/prism/dot_visitor.rb#4295 + # source://prism//lib/prism/dot_visitor.rb#4341 def visit_unless_node(node); end # Visit a UntilNode node. # - # source://prism//lib/prism/dot_visitor.rb#4338 + # source://prism//lib/prism/dot_visitor.rb#4384 def visit_until_node(node); end # Visit a WhenNode node. # - # source://prism//lib/prism/dot_visitor.rb#4373 + # source://prism//lib/prism/dot_visitor.rb#4419 def visit_when_node(node); end # Visit a WhileNode node. # - # source://prism//lib/prism/dot_visitor.rb#4409 + # source://prism//lib/prism/dot_visitor.rb#4460 def visit_while_node(node); end # Visit a XStringNode node. # - # source://prism//lib/prism/dot_visitor.rb#4444 + # source://prism//lib/prism/dot_visitor.rb#4495 def visit_x_string_node(node); end # Visit a YieldNode node. # - # source://prism//lib/prism/dot_visitor.rb#4473 + # source://prism//lib/prism/dot_visitor.rb#4524 def visit_yield_node(node); end private @@ -11016,168 +12127,180 @@ class Prism::DotVisitor < ::Prism::Visitor # Inspect a node that has arguments_node_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4519 + # source://prism//lib/prism/dot_visitor.rb#4570 def arguments_node_flags_inspect(node); end # Inspect a node that has array_node_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4527 + # source://prism//lib/prism/dot_visitor.rb#4578 def array_node_flags_inspect(node); end # Inspect a node that has call_node_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4535 + # source://prism//lib/prism/dot_visitor.rb#4586 def call_node_flags_inspect(node); end # Inspect a node that has encoding_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4546 + # source://prism//lib/prism/dot_visitor.rb#4597 def encoding_flags_inspect(node); end # Inspect a node that has integer_base_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4555 + # source://prism//lib/prism/dot_visitor.rb#4606 def integer_base_flags_inspect(node); end + # Inspect a node that has interpolated_string_node_flags flags to display the flags as a + # comma-separated list. + # + # source://prism//lib/prism/dot_visitor.rb#4617 + def interpolated_string_node_flags_inspect(node); end + # Inspect a node that has keyword_hash_node_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4566 + # source://prism//lib/prism/dot_visitor.rb#4626 def keyword_hash_node_flags_inspect(node); end # Inspect a location to display the start and end line and column numbers. # - # source://prism//lib/prism/dot_visitor.rb#4513 + # source://prism//lib/prism/dot_visitor.rb#4564 def location_inspect(location); end # Inspect a node that has loop_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4574 + # source://prism//lib/prism/dot_visitor.rb#4634 def loop_flags_inspect(node); end # Generate a unique node ID for a node throughout the digraph. # - # source://prism//lib/prism/dot_visitor.rb#4508 + # source://prism//lib/prism/dot_visitor.rb#4559 def node_id(node); end # Inspect a node that has parameter_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4582 + # source://prism//lib/prism/dot_visitor.rb#4642 def parameter_flags_inspect(node); end # Inspect a node that has range_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4590 + # source://prism//lib/prism/dot_visitor.rb#4650 def range_flags_inspect(node); end # Inspect a node that has regular_expression_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4598 + # source://prism//lib/prism/dot_visitor.rb#4658 def regular_expression_flags_inspect(node); end + # Inspect a node that has shareable_constant_node_flags flags to display the flags as a + # comma-separated list. + # + # source://prism//lib/prism/dot_visitor.rb#4676 + def shareable_constant_node_flags_inspect(node); end + # Inspect a node that has string_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4616 + # source://prism//lib/prism/dot_visitor.rb#4686 def string_flags_inspect(node); end # Inspect a node that has symbol_flags flags to display the flags as a # comma-separated list. # - # source://prism//lib/prism/dot_visitor.rb#4626 + # source://prism//lib/prism/dot_visitor.rb#4697 def symbol_flags_inspect(node); end end -# source://prism//lib/prism/dot_visitor.rb#58 +# source://prism//lib/prism/dot_visitor.rb#59 class Prism::DotVisitor::Digraph # @return [Digraph] a new instance of Digraph # - # source://prism//lib/prism/dot_visitor.rb#61 + # source://prism//lib/prism/dot_visitor.rb#62 def initialize; end - # source://prism//lib/prism/dot_visitor.rb#75 + # source://prism//lib/prism/dot_visitor.rb#76 def edge(value); end # Returns the value of attribute edges. # - # source://prism//lib/prism/dot_visitor.rb#59 + # source://prism//lib/prism/dot_visitor.rb#60 def edges; end - # source://prism//lib/prism/dot_visitor.rb#67 + # source://prism//lib/prism/dot_visitor.rb#68 def node(value); end # Returns the value of attribute nodes. # - # source://prism//lib/prism/dot_visitor.rb#59 + # source://prism//lib/prism/dot_visitor.rb#60 def nodes; end - # source://prism//lib/prism/dot_visitor.rb#79 + # source://prism//lib/prism/dot_visitor.rb#80 def to_dot; end - # source://prism//lib/prism/dot_visitor.rb#71 + # source://prism//lib/prism/dot_visitor.rb#72 def waypoint(value); end # Returns the value of attribute waypoints. # - # source://prism//lib/prism/dot_visitor.rb#59 + # source://prism//lib/prism/dot_visitor.rb#60 def waypoints; end end -# source://prism//lib/prism/dot_visitor.rb#14 +# source://prism//lib/prism/dot_visitor.rb#15 class Prism::DotVisitor::Field # @return [Field] a new instance of Field # - # source://prism//lib/prism/dot_visitor.rb#17 + # source://prism//lib/prism/dot_visitor.rb#18 def initialize(name, value, port); end # Returns the value of attribute name. # - # source://prism//lib/prism/dot_visitor.rb#15 + # source://prism//lib/prism/dot_visitor.rb#16 def name; end # Returns the value of attribute port. # - # source://prism//lib/prism/dot_visitor.rb#15 + # source://prism//lib/prism/dot_visitor.rb#16 def port; end - # source://prism//lib/prism/dot_visitor.rb#23 + # source://prism//lib/prism/dot_visitor.rb#24 def to_dot; end # Returns the value of attribute value. # - # source://prism//lib/prism/dot_visitor.rb#15 + # source://prism//lib/prism/dot_visitor.rb#16 def value; end end -# source://prism//lib/prism/dot_visitor.rb#32 +# source://prism//lib/prism/dot_visitor.rb#33 class Prism::DotVisitor::Table # @return [Table] a new instance of Table # - # source://prism//lib/prism/dot_visitor.rb#35 + # source://prism//lib/prism/dot_visitor.rb#36 def initialize(name); end - # source://prism//lib/prism/dot_visitor.rb#40 + # source://prism//lib/prism/dot_visitor.rb#41 def field(name, value = T.unsafe(nil), port: T.unsafe(nil)); end # Returns the value of attribute fields. # - # source://prism//lib/prism/dot_visitor.rb#33 + # source://prism//lib/prism/dot_visitor.rb#34 def fields; end # Returns the value of attribute name. # - # source://prism//lib/prism/dot_visitor.rb#33 + # source://prism//lib/prism/dot_visitor.rb#34 def name; end - # source://prism//lib/prism/dot_visitor.rb#44 + # source://prism//lib/prism/dot_visitor.rb#45 def to_dot; end end @@ -11186,92 +12309,110 @@ end # if a then b else c end # ^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#6290 +# source://prism//lib/prism/node.rb#6088 class Prism::ElseNode < ::Prism::Node # def initialize: (Location else_keyword_loc, StatementsNode? statements, Location? end_keyword_loc, Location location) -> void # # @return [ElseNode] a new instance of ElseNode # - # source://prism//lib/prism/node.rb#6292 + # source://prism//lib/prism/node.rb#6090 + sig do + params( + source: Prism::Source, + else_keyword_loc: Prism::Location, + statements: T.nilable(Prism::StatementsNode), + end_keyword_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, else_keyword_loc, statements, end_keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#6302 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#6100 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6307 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6105 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#6319 + # source://prism//lib/prism/node.rb#6117 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#6312 + # source://prism//lib/prism/node.rb#6110 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ElseNode + # def copy: (?else_keyword_loc: Location, ?statements: StatementsNode?, ?end_keyword_loc: Location?, ?location: Location) -> ElseNode # - # source://prism//lib/prism/node.rb#6324 - sig { params(params: T.untyped).returns(Prism::ElseNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#6122 + sig do + params( + else_keyword_loc: Prism::Location, + statements: T.nilable(Prism::StatementsNode), + end_keyword_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::ElseNode) + end + def copy(else_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6307 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6105 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { else_keyword_loc: Location, statements: StatementsNode?, end_keyword_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#6338 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#6130 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def else_keyword: () -> String # - # source://prism//lib/prism/node.rb#6365 + # source://prism//lib/prism/node.rb#6159 sig { returns(String) } def else_keyword; end # attr_reader else_keyword_loc: Location # - # source://prism//lib/prism/node.rb#6343 + # source://prism//lib/prism/node.rb#6135 sig { returns(Prism::Location) } def else_keyword_loc; end # def end_keyword: () -> String? # - # source://prism//lib/prism/node.rb#6370 + # source://prism//lib/prism/node.rb#6164 sig { returns(T.nilable(String)) } def end_keyword; end # attr_reader end_keyword_loc: Location? # - # source://prism//lib/prism/node.rb#6352 + # source://prism//lib/prism/node.rb#6145 sig { returns(T.nilable(Prism::Location)) } def end_keyword_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#6375 + # source://prism//lib/prism/node.rb#6169 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#6349 + # source://prism//lib/prism/node.rb#6142 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end @@ -11290,7 +12431,8 @@ class Prism::ElseNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#6402 + # source://prism//lib/prism/node.rb#6196 + sig { override.returns(Symbol) } def type; end class << self @@ -11301,7 +12443,7 @@ class Prism::ElseNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#6412 + # source://prism//lib/prism/node.rb#6206 def type; end end end @@ -11309,18 +12451,20 @@ end # EmbDocComment objects correspond to comments that are surrounded by =begin # and =end. # -# source://prism//lib/prism/parse_result.rb#290 +# source://prism//lib/prism/parse_result.rb#325 class Prism::EmbDocComment < ::Prism::Comment # Returns a string representation of this comment. # - # source://prism//lib/prism/parse_result.rb#297 + # source://prism//lib/prism/parse_result.rb#332 + sig { returns(String) } def inspect; end # This can only be true for inline comments. # # @return [Boolean] # - # source://prism//lib/prism/parse_result.rb#292 + # source://prism//lib/prism/parse_result.rb#327 + sig { override.returns(T::Boolean) } def trailing?; end end @@ -11329,92 +12473,110 @@ end # "foo #{bar}" # ^^^^^^ # -# source://prism//lib/prism/node.rb#6421 +# source://prism//lib/prism/node.rb#6215 class Prism::EmbeddedStatementsNode < ::Prism::Node # def initialize: (Location opening_loc, StatementsNode? statements, Location closing_loc, Location location) -> void # # @return [EmbeddedStatementsNode] a new instance of EmbeddedStatementsNode # - # source://prism//lib/prism/node.rb#6423 + # source://prism//lib/prism/node.rb#6217 + sig do + params( + source: Prism::Source, + opening_loc: Prism::Location, + statements: T.nilable(Prism::StatementsNode), + closing_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, opening_loc, statements, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#6433 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#6227 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6438 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6232 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#6495 + # source://prism//lib/prism/node.rb#6285 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#6483 + # source://prism//lib/prism/node.rb#6272 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#6450 + # source://prism//lib/prism/node.rb#6244 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#6443 + # source://prism//lib/prism/node.rb#6237 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> EmbeddedStatementsNode + # def copy: (?opening_loc: Location, ?statements: StatementsNode?, ?closing_loc: Location, ?location: Location) -> EmbeddedStatementsNode # - # source://prism//lib/prism/node.rb#6455 - sig { params(params: T.untyped).returns(Prism::EmbeddedStatementsNode) } - def copy(**params); end - - # def child_nodes: () -> Array[nil | Node] + # source://prism//lib/prism/node.rb#6249 + sig do + params( + opening_loc: Prism::Location, + statements: T.nilable(Prism::StatementsNode), + closing_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::EmbeddedStatementsNode) + end + def copy(opening_loc: T.unsafe(nil), statements: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end + + # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6438 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6232 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { opening_loc: Location, statements: StatementsNode?, closing_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#6469 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#6257 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#6500 + # source://prism//lib/prism/node.rb#6290 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String # - # source://prism//lib/prism/node.rb#6490 + # source://prism//lib/prism/node.rb#6280 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#6474 + # source://prism//lib/prism/node.rb#6262 sig { returns(Prism::Location) } def opening_loc; end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#6480 + # source://prism//lib/prism/node.rb#6269 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end @@ -11433,7 +12595,8 @@ class Prism::EmbeddedStatementsNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#6527 + # source://prism//lib/prism/node.rb#6317 + sig { override.returns(Symbol) } def type; end class << self @@ -11444,7 +12607,7 @@ class Prism::EmbeddedStatementsNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#6537 + # source://prism//lib/prism/node.rb#6327 def type; end end end @@ -11454,74 +12617,90 @@ end # "foo #@bar" # ^^^^^ # -# source://prism//lib/prism/node.rb#6546 +# source://prism//lib/prism/node.rb#6336 class Prism::EmbeddedVariableNode < ::Prism::Node - # def initialize: (Location operator_loc, Node variable, Location location) -> void + # def initialize: (Location operator_loc, Prism::node variable, Location location) -> void # # @return [EmbeddedVariableNode] a new instance of EmbeddedVariableNode # - # source://prism//lib/prism/node.rb#6548 + # source://prism//lib/prism/node.rb#6338 + sig do + params( + source: Prism::Source, + operator_loc: Prism::Location, + variable: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, operator_loc, variable, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#6557 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#6347 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6562 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6352 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#6572 + # source://prism//lib/prism/node.rb#6362 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#6567 + # source://prism//lib/prism/node.rb#6357 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> EmbeddedVariableNode + # def copy: (?operator_loc: Location, ?variable: Prism::node, ?location: Location) -> EmbeddedVariableNode # - # source://prism//lib/prism/node.rb#6577 - sig { params(params: T.untyped).returns(Prism::EmbeddedVariableNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#6367 + sig do + params( + operator_loc: Prism::Location, + variable: Prism::Node, + location: Prism::Location + ).returns(Prism::EmbeddedVariableNode) + end + def copy(operator_loc: T.unsafe(nil), variable: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6562 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6352 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { operator_loc: Location, variable: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { operator_loc: Location, variable: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#6590 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#6375 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#6610 + # source://prism//lib/prism/node.rb#6396 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#6605 + # source://prism//lib/prism/node.rb#6391 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#6595 + # source://prism//lib/prism/node.rb#6380 sig { returns(Prism::Location) } def operator_loc; end @@ -11540,12 +12719,13 @@ class Prism::EmbeddedVariableNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#6632 + # source://prism//lib/prism/node.rb#6418 + sig { override.returns(Symbol) } def type; end - # attr_reader variable: Node + # attr_reader variable: Prism::node # - # source://prism//lib/prism/node.rb#6601 + # source://prism//lib/prism/node.rb#6387 sig { returns(Prism::Node) } def variable; end @@ -11557,24 +12737,24 @@ class Prism::EmbeddedVariableNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#6642 + # source://prism//lib/prism/node.rb#6428 def type; end end end # Flags for nodes that have unescaped content. # -# source://prism//lib/prism/node.rb#19268 +# source://prism//lib/prism/node.rb#18857 module Prism::EncodingFlags; end # internal bytes forced the encoding to binary # -# source://prism//lib/prism/node.rb#19273 +# source://prism//lib/prism/node.rb#18862 Prism::EncodingFlags::FORCED_BINARY_ENCODING = T.let(T.unsafe(nil), Integer) # internal bytes forced the encoding to UTF-8 # -# source://prism//lib/prism/node.rb#19270 +# source://prism//lib/prism/node.rb#18859 Prism::EncodingFlags::FORCED_UTF8_ENCODING = T.let(T.unsafe(nil), Integer) # Represents an `ensure` clause in a `begin` statement. @@ -11586,92 +12766,110 @@ Prism::EncodingFlags::FORCED_UTF8_ENCODING = T.let(T.unsafe(nil), Integer) # bar # end # -# source://prism//lib/prism/node.rb#6655 +# source://prism//lib/prism/node.rb#6441 class Prism::EnsureNode < ::Prism::Node # def initialize: (Location ensure_keyword_loc, StatementsNode? statements, Location end_keyword_loc, Location location) -> void # # @return [EnsureNode] a new instance of EnsureNode # - # source://prism//lib/prism/node.rb#6657 + # source://prism//lib/prism/node.rb#6443 + sig do + params( + source: Prism::Source, + ensure_keyword_loc: Prism::Location, + statements: T.nilable(Prism::StatementsNode), + end_keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, ensure_keyword_loc, statements, end_keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#6667 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#6453 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6672 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6458 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#6684 + # source://prism//lib/prism/node.rb#6470 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#6677 + # source://prism//lib/prism/node.rb#6463 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> EnsureNode + # def copy: (?ensure_keyword_loc: Location, ?statements: StatementsNode?, ?end_keyword_loc: Location, ?location: Location) -> EnsureNode # - # source://prism//lib/prism/node.rb#6689 - sig { params(params: T.untyped).returns(Prism::EnsureNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#6475 + sig do + params( + ensure_keyword_loc: Prism::Location, + statements: T.nilable(Prism::StatementsNode), + end_keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::EnsureNode) + end + def copy(ensure_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6672 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6458 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { ensure_keyword_loc: Location, statements: StatementsNode?, end_keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#6703 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#6483 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def end_keyword: () -> String # - # source://prism//lib/prism/node.rb#6729 + # source://prism//lib/prism/node.rb#6511 sig { returns(String) } def end_keyword; end # attr_reader end_keyword_loc: Location # - # source://prism//lib/prism/node.rb#6717 + # source://prism//lib/prism/node.rb#6498 sig { returns(Prism::Location) } def end_keyword_loc; end # def ensure_keyword: () -> String # - # source://prism//lib/prism/node.rb#6724 + # source://prism//lib/prism/node.rb#6506 sig { returns(String) } def ensure_keyword; end # attr_reader ensure_keyword_loc: Location # - # source://prism//lib/prism/node.rb#6708 + # source://prism//lib/prism/node.rb#6488 sig { returns(Prism::Location) } def ensure_keyword_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#6734 + # source://prism//lib/prism/node.rb#6516 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#6714 + # source://prism//lib/prism/node.rb#6495 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end @@ -11690,7 +12888,8 @@ class Prism::EnsureNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#6761 + # source://prism//lib/prism/node.rb#6543 + sig { override.returns(Symbol) } def type; end class << self @@ -11701,7 +12900,7 @@ class Prism::EnsureNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#6771 + # source://prism//lib/prism/node.rb#6553 def type; end end end @@ -11711,63 +12910,66 @@ end # false # ^^^^^ # -# source://prism//lib/prism/node.rb#6780 +# source://prism//lib/prism/node.rb#6562 class Prism::FalseNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [FalseNode] a new instance of FalseNode # - # source://prism//lib/prism/node.rb#6782 + # source://prism//lib/prism/node.rb#6564 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#6789 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#6571 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6794 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6576 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#6804 + # source://prism//lib/prism/node.rb#6586 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#6799 + # source://prism//lib/prism/node.rb#6581 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> FalseNode + # def copy: (?location: Location) -> FalseNode # - # source://prism//lib/prism/node.rb#6809 - sig { params(params: T.untyped).returns(Prism::FalseNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#6591 + sig { params(location: Prism::Location).returns(Prism::FalseNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6794 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6576 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#6820 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#6599 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#6826 + # source://prism//lib/prism/node.rb#6605 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -11785,7 +12987,8 @@ class Prism::FalseNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#6845 + # source://prism//lib/prism/node.rb#6624 + sig { override.returns(Symbol) } def type; end class << self @@ -11796,7 +12999,7 @@ class Prism::FalseNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#6855 + # source://prism//lib/prism/node.rb#6634 def type; end end end @@ -11812,110 +13015,134 @@ end # foo in Foo(*bar, baz, *qux) # ^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#6870 +# source://prism//lib/prism/node.rb#6649 class Prism::FindPatternNode < ::Prism::Node - # def initialize: (Node? constant, Node left, Array[Node] requireds, Node right, Location? opening_loc, Location? closing_loc, Location location) -> void + # def initialize: (Prism::node? constant, Prism::node left, Array[Prism::node] requireds, Prism::node right, Location? opening_loc, Location? closing_loc, Location location) -> void # # @return [FindPatternNode] a new instance of FindPatternNode # - # source://prism//lib/prism/node.rb#6872 + # source://prism//lib/prism/node.rb#6651 + sig do + params( + source: Prism::Source, + constant: T.nilable(Prism::Node), + left: Prism::Node, + requireds: T::Array[Prism::Node], + right: Prism::Node, + opening_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, constant, left, requireds, right, opening_loc, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#6885 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#6664 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6890 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6669 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#6974 + # source://prism//lib/prism/node.rb#6746 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#6956 + # source://prism//lib/prism/node.rb#6727 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#6905 + # source://prism//lib/prism/node.rb#6684 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#6895 + # source://prism//lib/prism/node.rb#6674 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # attr_reader constant: Node? + # attr_reader constant: Prism::node? # - # source://prism//lib/prism/node.rb#6932 + # source://prism//lib/prism/node.rb#6702 sig { returns(T.nilable(Prism::Node)) } def constant; end - # def copy: (**params) -> FindPatternNode + # def copy: (?constant: Prism::node?, ?left: Prism::node, ?requireds: Array[Prism::node], ?right: Prism::node, ?opening_loc: Location?, ?closing_loc: Location?, ?location: Location) -> FindPatternNode # - # source://prism//lib/prism/node.rb#6910 - sig { params(params: T.untyped).returns(Prism::FindPatternNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#6689 + sig do + params( + constant: T.nilable(Prism::Node), + left: Prism::Node, + requireds: T::Array[Prism::Node], + right: Prism::Node, + opening_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::FindPatternNode) + end + def copy(constant: T.unsafe(nil), left: T.unsafe(nil), requireds: T.unsafe(nil), right: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#6890 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6669 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { constant: Node?, left: Node, requireds: Array[Node], right: Node, opening_loc: Location?, closing_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { constant: Prism::node?, left: Prism::node, requireds: Array[Prism::node], right: Prism::node, opening_loc: Location?, closing_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#6927 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#6697 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#6979 + # source://prism//lib/prism/node.rb#6751 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader left: Node + # attr_reader left: Prism::node # - # source://prism//lib/prism/node.rb#6935 + # source://prism//lib/prism/node.rb#6705 sig { returns(Prism::Node) } def left; end # def opening: () -> String? # - # source://prism//lib/prism/node.rb#6969 + # source://prism//lib/prism/node.rb#6741 sig { returns(T.nilable(String)) } def opening; end # attr_reader opening_loc: Location? # - # source://prism//lib/prism/node.rb#6944 + # source://prism//lib/prism/node.rb#6714 sig { returns(T.nilable(Prism::Location)) } def opening_loc; end - # attr_reader requireds: Array[Node] + # attr_reader requireds: Array[Prism::node] # - # source://prism//lib/prism/node.rb#6938 + # source://prism//lib/prism/node.rb#6708 sig { returns(T::Array[Prism::Node]) } def requireds; end - # attr_reader right: Node + # attr_reader right: Prism::node # - # source://prism//lib/prism/node.rb#6941 + # source://prism//lib/prism/node.rb#6711 sig { returns(Prism::Node) } def right; end @@ -11934,7 +13161,8 @@ class Prism::FindPatternNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#7011 + # source://prism//lib/prism/node.rb#6783 + sig { override.returns(Symbol) } def type; end class << self @@ -11945,7 +13173,7 @@ class Prism::FindPatternNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#7021 + # source://prism//lib/prism/node.rb#6793 def type; end end end @@ -11955,94 +13183,114 @@ end # baz if foo .. bar # ^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#7030 +# source://prism//lib/prism/node.rb#6802 class Prism::FlipFlopNode < ::Prism::Node - # def initialize: (Integer flags, Node? left, Node? right, Location operator_loc, Location location) -> void + # def initialize: (Integer flags, Prism::node? left, Prism::node? right, Location operator_loc, Location location) -> void # # @return [FlipFlopNode] a new instance of FlipFlopNode # - # source://prism//lib/prism/node.rb#7032 + # source://prism//lib/prism/node.rb#6804 + sig do + params( + source: Prism::Source, + flags: Integer, + left: T.nilable(Prism::Node), + right: T.nilable(Prism::Node), + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, flags, left, right, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#7043 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#6815 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7048 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6820 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#7061 + # source://prism//lib/prism/node.rb#6833 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#7053 + # source://prism//lib/prism/node.rb#6825 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> FlipFlopNode + # def copy: (?flags: Integer, ?left: Prism::node?, ?right: Prism::node?, ?operator_loc: Location, ?location: Location) -> FlipFlopNode # - # source://prism//lib/prism/node.rb#7066 - sig { params(params: T.untyped).returns(Prism::FlipFlopNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#6838 + sig do + params( + flags: Integer, + left: T.nilable(Prism::Node), + right: T.nilable(Prism::Node), + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::FlipFlopNode) + end + def copy(flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7048 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6820 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, left: Node?, right: Node?, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, left: Prism::node?, right: Prism::node?, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#7081 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#6846 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def exclude_end?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#7103 + # source://prism//lib/prism/node.rb#6869 sig { returns(T::Boolean) } def exclude_end?; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#7113 + # source://prism//lib/prism/node.rb#6879 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader left: Node? + # attr_reader left: Prism::node? # - # source://prism//lib/prism/node.rb#7090 + # source://prism//lib/prism/node.rb#6855 sig { returns(T.nilable(Prism::Node)) } def left; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#7108 + # source://prism//lib/prism/node.rb#6874 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#7096 + # source://prism//lib/prism/node.rb#6861 sig { returns(Prism::Location) } def operator_loc; end - # attr_reader right: Node? + # attr_reader right: Prism::node? # - # source://prism//lib/prism/node.rb#7093 + # source://prism//lib/prism/node.rb#6858 sig { returns(T.nilable(Prism::Node)) } def right; end @@ -12061,14 +13309,15 @@ class Prism::FlipFlopNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#7147 + # source://prism//lib/prism/node.rb#6913 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#7086 + # source://prism//lib/prism/node.rb#6851 sig { returns(Integer) } def flags; end @@ -12080,7 +13329,7 @@ class Prism::FlipFlopNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#7157 + # source://prism//lib/prism/node.rb#6923 def type; end end end @@ -12090,63 +13339,66 @@ end # 1.0 # ^^^ # -# source://prism//lib/prism/node.rb#7166 +# source://prism//lib/prism/node.rb#6932 class Prism::FloatNode < ::Prism::Node - # def initialize: (Location location) -> void + # def initialize: (Float value, Location location) -> void # # @return [FloatNode] a new instance of FloatNode # - # source://prism//lib/prism/node.rb#7168 - def initialize(source, location); end + # source://prism//lib/prism/node.rb#6934 + sig { params(source: Prism::Source, value: Float, location: Prism::Location).void } + def initialize(source, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#7175 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#6942 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7180 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6947 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#7190 + # source://prism//lib/prism/node.rb#6957 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#7185 + # source://prism//lib/prism/node.rb#6952 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> FloatNode + # def copy: (?value: Float, ?location: Location) -> FloatNode # - # source://prism//lib/prism/node.rb#7195 - sig { params(params: T.untyped).returns(Prism::FloatNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#6962 + sig { params(value: Float, location: Prism::Location).returns(Prism::FloatNode) } + def copy(value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7180 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#6947 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { value: Float, location: Location } # - # source://prism//lib/prism/node.rb#7206 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#6970 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#7212 + # source://prism//lib/prism/node.rb#6979 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -12164,12 +13416,14 @@ class Prism::FloatNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#7231 + # source://prism//lib/prism/node.rb#6999 + sig { override.returns(Symbol) } def type; end - # Returns the value of the node as a Ruby Float. + # The value of the floating point number as a Float. # - # source://prism//lib/prism/node_ext.rb#62 + # source://prism//lib/prism/node.rb#6975 + sig { returns(Float) } def value; end class << self @@ -12180,7 +13434,7 @@ class Prism::FloatNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#7241 + # source://prism//lib/prism/node.rb#7009 def type; end end end @@ -12190,128 +13444,154 @@ end # for i in a end # ^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#7250 +# source://prism//lib/prism/node.rb#7018 class Prism::ForNode < ::Prism::Node - # def initialize: (Node index, Node collection, StatementsNode? statements, Location for_keyword_loc, Location in_keyword_loc, Location? do_keyword_loc, Location end_keyword_loc, Location location) -> void + # def initialize: (Prism::node index, Prism::node collection, StatementsNode? statements, Location for_keyword_loc, Location in_keyword_loc, Location? do_keyword_loc, Location end_keyword_loc, Location location) -> void # # @return [ForNode] a new instance of ForNode # - # source://prism//lib/prism/node.rb#7252 + # source://prism//lib/prism/node.rb#7020 + sig do + params( + source: Prism::Source, + index: Prism::Node, + collection: Prism::Node, + statements: T.nilable(Prism::StatementsNode), + for_keyword_loc: Prism::Location, + in_keyword_loc: Prism::Location, + do_keyword_loc: T.nilable(Prism::Location), + end_keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, index, collection, statements, for_keyword_loc, in_keyword_loc, do_keyword_loc, end_keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#7266 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#7034 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7271 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7039 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end - # attr_reader collection: Node + # attr_reader collection: Prism::node # - # source://prism//lib/prism/node.rb#7316 + # source://prism//lib/prism/node.rb#7074 sig { returns(Prism::Node) } def collection; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#7285 + # source://prism//lib/prism/node.rb#7053 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#7276 + # source://prism//lib/prism/node.rb#7044 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ForNode + # def copy: (?index: Prism::node, ?collection: Prism::node, ?statements: StatementsNode?, ?for_keyword_loc: Location, ?in_keyword_loc: Location, ?do_keyword_loc: Location?, ?end_keyword_loc: Location, ?location: Location) -> ForNode # - # source://prism//lib/prism/node.rb#7290 - sig { params(params: T.untyped).returns(Prism::ForNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#7058 + sig do + params( + index: Prism::Node, + collection: Prism::Node, + statements: T.nilable(Prism::StatementsNode), + for_keyword_loc: Prism::Location, + in_keyword_loc: Prism::Location, + do_keyword_loc: T.nilable(Prism::Location), + end_keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::ForNode) + end + def copy(index: T.unsafe(nil), collection: T.unsafe(nil), statements: T.unsafe(nil), for_keyword_loc: T.unsafe(nil), in_keyword_loc: T.unsafe(nil), do_keyword_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7271 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7039 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { index: Node, collection: Node, statements: StatementsNode?, for_keyword_loc: Location, in_keyword_loc: Location, do_keyword_loc: Location?, end_keyword_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { index: Prism::node, collection: Prism::node, statements: StatementsNode?, for_keyword_loc: Location, in_keyword_loc: Location, do_keyword_loc: Location?, end_keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#7308 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#7066 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def do_keyword: () -> String? # - # source://prism//lib/prism/node.rb#7363 + # source://prism//lib/prism/node.rb#7125 sig { returns(T.nilable(String)) } def do_keyword; end # attr_reader do_keyword_loc: Location? # - # source://prism//lib/prism/node.rb#7334 + # source://prism//lib/prism/node.rb#7094 sig { returns(T.nilable(Prism::Location)) } def do_keyword_loc; end # def end_keyword: () -> String # - # source://prism//lib/prism/node.rb#7368 + # source://prism//lib/prism/node.rb#7130 sig { returns(String) } def end_keyword; end # attr_reader end_keyword_loc: Location # - # source://prism//lib/prism/node.rb#7346 + # source://prism//lib/prism/node.rb#7107 sig { returns(Prism::Location) } def end_keyword_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def for_keyword: () -> String # - # source://prism//lib/prism/node.rb#7353 + # source://prism//lib/prism/node.rb#7115 sig { returns(String) } def for_keyword; end # attr_reader for_keyword_loc: Location # - # source://prism//lib/prism/node.rb#7322 + # source://prism//lib/prism/node.rb#7080 sig { returns(Prism::Location) } def for_keyword_loc; end # def in_keyword: () -> String # - # source://prism//lib/prism/node.rb#7358 + # source://prism//lib/prism/node.rb#7120 sig { returns(String) } def in_keyword; end # attr_reader in_keyword_loc: Location # - # source://prism//lib/prism/node.rb#7328 + # source://prism//lib/prism/node.rb#7087 sig { returns(Prism::Location) } def in_keyword_loc; end - # attr_reader index: Node + # attr_reader index: Prism::node # - # source://prism//lib/prism/node.rb#7313 + # source://prism//lib/prism/node.rb#7071 sig { returns(Prism::Node) } def index; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#7373 + # source://prism//lib/prism/node.rb#7135 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#7319 + # source://prism//lib/prism/node.rb#7077 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end @@ -12330,7 +13610,8 @@ class Prism::ForNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#7406 + # source://prism//lib/prism/node.rb#7168 + sig { override.returns(Symbol) } def type; end class << self @@ -12341,7 +13622,7 @@ class Prism::ForNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#7416 + # source://prism//lib/prism/node.rb#7178 def type; end end end @@ -12353,63 +13634,66 @@ end # ^^^ # end # -# source://prism//lib/prism/node.rb#7427 +# source://prism//lib/prism/node.rb#7189 class Prism::ForwardingArgumentsNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [ForwardingArgumentsNode] a new instance of ForwardingArgumentsNode # - # source://prism//lib/prism/node.rb#7429 + # source://prism//lib/prism/node.rb#7191 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#7436 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#7198 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7441 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7203 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#7451 + # source://prism//lib/prism/node.rb#7213 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#7446 + # source://prism//lib/prism/node.rb#7208 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ForwardingArgumentsNode + # def copy: (?location: Location) -> ForwardingArgumentsNode # - # source://prism//lib/prism/node.rb#7456 - sig { params(params: T.untyped).returns(Prism::ForwardingArgumentsNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#7218 + sig { params(location: Prism::Location).returns(Prism::ForwardingArgumentsNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7441 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7203 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#7467 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#7226 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#7473 + # source://prism//lib/prism/node.rb#7232 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -12427,7 +13711,8 @@ class Prism::ForwardingArgumentsNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#7492 + # source://prism//lib/prism/node.rb#7251 + sig { override.returns(Symbol) } def type; end class << self @@ -12438,7 +13723,7 @@ class Prism::ForwardingArgumentsNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#7502 + # source://prism//lib/prism/node.rb#7261 def type; end end end @@ -12449,63 +13734,66 @@ end # ^^^ # end # -# source://prism//lib/prism/node.rb#7512 +# source://prism//lib/prism/node.rb#7271 class Prism::ForwardingParameterNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [ForwardingParameterNode] a new instance of ForwardingParameterNode # - # source://prism//lib/prism/node.rb#7514 + # source://prism//lib/prism/node.rb#7273 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#7521 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#7280 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7526 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7285 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#7536 + # source://prism//lib/prism/node.rb#7295 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#7531 + # source://prism//lib/prism/node.rb#7290 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ForwardingParameterNode + # def copy: (?location: Location) -> ForwardingParameterNode # - # source://prism//lib/prism/node.rb#7541 - sig { params(params: T.untyped).returns(Prism::ForwardingParameterNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#7300 + sig { params(location: Prism::Location).returns(Prism::ForwardingParameterNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7526 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7285 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#7552 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#7308 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#7558 + # source://prism//lib/prism/node.rb#7314 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -12523,7 +13811,8 @@ class Prism::ForwardingParameterNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#7577 + # source://prism//lib/prism/node.rb#7333 + sig { override.returns(Symbol) } def type; end class << self @@ -12534,7 +13823,7 @@ class Prism::ForwardingParameterNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#7587 + # source://prism//lib/prism/node.rb#7343 def type; end end end @@ -12544,69 +13833,72 @@ end # super # ^^^^^ # -# source://prism//lib/prism/node.rb#7596 +# source://prism//lib/prism/node.rb#7352 class Prism::ForwardingSuperNode < ::Prism::Node # def initialize: (BlockNode? block, Location location) -> void # # @return [ForwardingSuperNode] a new instance of ForwardingSuperNode # - # source://prism//lib/prism/node.rb#7598 + # source://prism//lib/prism/node.rb#7354 + sig { params(source: Prism::Source, block: T.nilable(Prism::BlockNode), location: Prism::Location).void } def initialize(source, block, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#7606 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#7362 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader block: BlockNode? # - # source://prism//lib/prism/node.rb#7645 + # source://prism//lib/prism/node.rb#7397 sig { returns(T.nilable(Prism::BlockNode)) } def block; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7611 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7367 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#7623 + # source://prism//lib/prism/node.rb#7379 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#7616 + # source://prism//lib/prism/node.rb#7372 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ForwardingSuperNode + # def copy: (?block: BlockNode?, ?location: Location) -> ForwardingSuperNode # - # source://prism//lib/prism/node.rb#7628 - sig { params(params: T.untyped).returns(Prism::ForwardingSuperNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#7384 + sig { params(block: T.nilable(Prism::BlockNode), location: Prism::Location).returns(Prism::ForwardingSuperNode) } + def copy(block: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7611 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7367 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { block: BlockNode?, location: Location } # - # source://prism//lib/prism/node.rb#7640 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#7392 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#7649 + # source://prism//lib/prism/node.rb#7401 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -12624,7 +13916,8 @@ class Prism::ForwardingSuperNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#7674 + # source://prism//lib/prism/node.rb#7426 + sig { override.returns(Symbol) } def type; end class << self @@ -12635,7 +13928,7 @@ class Prism::ForwardingSuperNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#7684 + # source://prism//lib/prism/node.rb#7436 def type; end end end @@ -12645,89 +13938,109 @@ end # $target &&= value # ^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#7693 +# source://prism//lib/prism/node.rb#7445 class Prism::GlobalVariableAndWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void # # @return [GlobalVariableAndWriteNode] a new instance of GlobalVariableAndWriteNode # - # source://prism//lib/prism/node.rb#7695 + # source://prism//lib/prism/node.rb#7447 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#7706 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#7458 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7711 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7463 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#7721 + # source://prism//lib/prism/node.rb#7473 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#7716 + # source://prism//lib/prism/node.rb#7468 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> GlobalVariableAndWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> GlobalVariableAndWriteNode # - # source://prism//lib/prism/node.rb#7726 - sig { params(params: T.untyped).returns(Prism::GlobalVariableAndWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#7478 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::GlobalVariableAndWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7711 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7463 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#7741 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#7486 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#161 + # source://prism//lib/prism/desugar_compiler.rb#163 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#7770 + # source://prism//lib/prism/node.rb#7517 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#7746 + # source://prism//lib/prism/node.rb#7491 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#7749 + # source://prism//lib/prism/node.rb#7494 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#7765 + # source://prism//lib/prism/node.rb#7512 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#7755 + # source://prism//lib/prism/node.rb#7501 sig { returns(Prism::Location) } def operator_loc; end @@ -12746,12 +14059,13 @@ class Prism::GlobalVariableAndWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#7794 + # source://prism//lib/prism/node.rb#7541 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#7761 + # source://prism//lib/prism/node.rb#7508 sig { returns(Prism::Node) } def value; end @@ -12763,7 +14077,7 @@ class Prism::GlobalVariableAndWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#7804 + # source://prism//lib/prism/node.rb#7551 def type; end end end @@ -12773,89 +14087,111 @@ end # $target += value # ^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#7813 +# source://prism//lib/prism/node.rb#7560 class Prism::GlobalVariableOperatorWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Symbol operator, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Symbol operator, Location location) -> void # # @return [GlobalVariableOperatorWriteNode] a new instance of GlobalVariableOperatorWriteNode # - # source://prism//lib/prism/node.rb#7815 + # source://prism//lib/prism/node.rb#7562 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + operator: Symbol, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, operator, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#7827 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#7574 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7832 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7579 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#7842 + # source://prism//lib/prism/node.rb#7589 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#7837 + # source://prism//lib/prism/node.rb#7584 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> GlobalVariableOperatorWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?operator: Symbol, ?location: Location) -> GlobalVariableOperatorWriteNode # - # source://prism//lib/prism/node.rb#7847 - sig { params(params: T.untyped).returns(Prism::GlobalVariableOperatorWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#7594 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + operator: Symbol, + location: Prism::Location + ).returns(Prism::GlobalVariableOperatorWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), operator: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7832 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7579 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, operator: Symbol, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, operator: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#7863 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#7602 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#173 + # source://prism//lib/prism/desugar_compiler.rb#175 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#7890 + # source://prism//lib/prism/node.rb#7631 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#7868 + # source://prism//lib/prism/node.rb#7607 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#7871 + # source://prism//lib/prism/node.rb#7610 sig { returns(Prism::Location) } def name_loc; end # attr_reader operator: Symbol # - # source://prism//lib/prism/node.rb#7886 + # source://prism//lib/prism/node.rb#7627 sig { returns(Symbol) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#7877 + # source://prism//lib/prism/node.rb#7617 sig { returns(Prism::Location) } def operator_loc; end @@ -12874,12 +14210,13 @@ class Prism::GlobalVariableOperatorWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#7915 + # source://prism//lib/prism/node.rb#7656 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#7883 + # source://prism//lib/prism/node.rb#7624 sig { returns(Prism::Node) } def value; end @@ -12891,7 +14228,7 @@ class Prism::GlobalVariableOperatorWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#7925 + # source://prism//lib/prism/node.rb#7666 def type; end end end @@ -12901,89 +14238,109 @@ end # $target ||= value # ^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#7934 +# source://prism//lib/prism/node.rb#7675 class Prism::GlobalVariableOrWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void # # @return [GlobalVariableOrWriteNode] a new instance of GlobalVariableOrWriteNode # - # source://prism//lib/prism/node.rb#7936 + # source://prism//lib/prism/node.rb#7677 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#7947 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#7688 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7952 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7693 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#7962 + # source://prism//lib/prism/node.rb#7703 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#7957 + # source://prism//lib/prism/node.rb#7698 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> GlobalVariableOrWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> GlobalVariableOrWriteNode # - # source://prism//lib/prism/node.rb#7967 - sig { params(params: T.untyped).returns(Prism::GlobalVariableOrWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#7708 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::GlobalVariableOrWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#7952 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7693 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#7982 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#7716 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#167 + # source://prism//lib/prism/desugar_compiler.rb#169 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#8011 + # source://prism//lib/prism/node.rb#7747 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#7987 + # source://prism//lib/prism/node.rb#7721 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#7990 + # source://prism//lib/prism/node.rb#7724 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#8006 + # source://prism//lib/prism/node.rb#7742 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#7996 + # source://prism//lib/prism/node.rb#7731 sig { returns(Prism::Location) } def operator_loc; end @@ -13002,12 +14359,13 @@ class Prism::GlobalVariableOrWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#8035 + # source://prism//lib/prism/node.rb#7771 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#8002 + # source://prism//lib/prism/node.rb#7738 sig { returns(Prism::Node) } def value; end @@ -13019,7 +14377,7 @@ class Prism::GlobalVariableOrWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#8045 + # source://prism//lib/prism/node.rb#7781 def type; end end end @@ -13029,63 +14387,66 @@ end # $foo # ^^^^ # -# source://prism//lib/prism/node.rb#8054 +# source://prism//lib/prism/node.rb#7790 class Prism::GlobalVariableReadNode < ::Prism::Node # def initialize: (Symbol name, Location location) -> void # # @return [GlobalVariableReadNode] a new instance of GlobalVariableReadNode # - # source://prism//lib/prism/node.rb#8056 + # source://prism//lib/prism/node.rb#7792 + sig { params(source: Prism::Source, name: Symbol, location: Prism::Location).void } def initialize(source, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#8064 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#7800 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8069 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7805 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#8079 + # source://prism//lib/prism/node.rb#7815 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#8074 + # source://prism//lib/prism/node.rb#7810 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> GlobalVariableReadNode + # def copy: (?name: Symbol, ?location: Location) -> GlobalVariableReadNode # - # source://prism//lib/prism/node.rb#8084 - sig { params(params: T.untyped).returns(Prism::GlobalVariableReadNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#7820 + sig { params(name: Symbol, location: Prism::Location).returns(Prism::GlobalVariableReadNode) } + def copy(name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8069 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7805 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#8096 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#7828 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#8109 + # source://prism//lib/prism/node.rb#7841 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # The name of the global variable, which is a `$` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifier). Alternatively, it can be one of the special global variables designated by a symbol. @@ -13094,7 +14455,7 @@ class Prism::GlobalVariableReadNode < ::Prism::Node # # $_Test # name `:$_Test` # - # source://prism//lib/prism/node.rb#8105 + # source://prism//lib/prism/node.rb#7837 sig { returns(Symbol) } def name; end @@ -13113,7 +14474,8 @@ class Prism::GlobalVariableReadNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#8129 + # source://prism//lib/prism/node.rb#7861 + sig { override.returns(Symbol) } def type; end class << self @@ -13124,7 +14486,7 @@ class Prism::GlobalVariableReadNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#8139 + # source://prism//lib/prism/node.rb#7871 def type; end end end @@ -13134,68 +14496,71 @@ end # $foo, $bar = baz # ^^^^ ^^^^ # -# source://prism//lib/prism/node.rb#8148 +# source://prism//lib/prism/node.rb#7880 class Prism::GlobalVariableTargetNode < ::Prism::Node # def initialize: (Symbol name, Location location) -> void # # @return [GlobalVariableTargetNode] a new instance of GlobalVariableTargetNode # - # source://prism//lib/prism/node.rb#8150 + # source://prism//lib/prism/node.rb#7882 + sig { params(source: Prism::Source, name: Symbol, location: Prism::Location).void } def initialize(source, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#8158 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#7890 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8163 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7895 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#8173 + # source://prism//lib/prism/node.rb#7905 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#8168 + # source://prism//lib/prism/node.rb#7900 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> GlobalVariableTargetNode + # def copy: (?name: Symbol, ?location: Location) -> GlobalVariableTargetNode # - # source://prism//lib/prism/node.rb#8178 - sig { params(params: T.untyped).returns(Prism::GlobalVariableTargetNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#7910 + sig { params(name: Symbol, location: Prism::Location).returns(Prism::GlobalVariableTargetNode) } + def copy(name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8163 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7895 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#8190 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#7918 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#8199 + # source://prism//lib/prism/node.rb#7927 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#8195 + # source://prism//lib/prism/node.rb#7923 sig { returns(Symbol) } def name; end @@ -13214,7 +14579,8 @@ class Prism::GlobalVariableTargetNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#8219 + # source://prism//lib/prism/node.rb#7947 + sig { override.returns(Symbol) } def type; end class << self @@ -13225,7 +14591,7 @@ class Prism::GlobalVariableTargetNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#8229 + # source://prism//lib/prism/node.rb#7957 def type; end end end @@ -13235,86 +14601,106 @@ end # $foo = 1 # ^^^^^^^^ # -# source://prism//lib/prism/node.rb#8238 +# source://prism//lib/prism/node.rb#7966 class Prism::GlobalVariableWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Node value, Location operator_loc, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Prism::node value, Location operator_loc, Location location) -> void # # @return [GlobalVariableWriteNode] a new instance of GlobalVariableWriteNode # - # source://prism//lib/prism/node.rb#8240 + # source://prism//lib/prism/node.rb#7968 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + value: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, value, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#8251 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#7979 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8256 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7984 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#8266 + # source://prism//lib/prism/node.rb#7994 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#8261 + # source://prism//lib/prism/node.rb#7989 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> GlobalVariableWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?value: Prism::node, ?operator_loc: Location, ?location: Location) -> GlobalVariableWriteNode # - # source://prism//lib/prism/node.rb#8271 - sig { params(params: T.untyped).returns(Prism::GlobalVariableWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#7999 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + value: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::GlobalVariableWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8256 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#7984 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, value: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, value: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#8286 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#8007 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#8315 + # source://prism//lib/prism/node.rb#8038 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#8291 + # source://prism//lib/prism/node.rb#8012 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#8294 + # source://prism//lib/prism/node.rb#8015 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#8310 + # source://prism//lib/prism/node.rb#8033 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#8303 + # source://prism//lib/prism/node.rb#8025 sig { returns(Prism::Location) } def operator_loc; end @@ -13333,12 +14719,13 @@ class Prism::GlobalVariableWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#8339 + # source://prism//lib/prism/node.rb#8062 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#8300 + # source://prism//lib/prism/node.rb#8022 sig { returns(Prism::Node) } def value; end @@ -13350,7 +14737,7 @@ class Prism::GlobalVariableWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#8349 + # source://prism//lib/prism/node.rb#8072 def type; end end end @@ -13360,30 +14747,39 @@ end # { a => b } # ^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#8358 +# source://prism//lib/prism/node.rb#8081 class Prism::HashNode < ::Prism::Node - # def initialize: (Location opening_loc, Array[Node] elements, Location closing_loc, Location location) -> void + # def initialize: (Location opening_loc, Array[AssocNode | AssocSplatNode] elements, Location closing_loc, Location location) -> void # # @return [HashNode] a new instance of HashNode # - # source://prism//lib/prism/node.rb#8360 + # source://prism//lib/prism/node.rb#8083 + sig do + params( + source: Prism::Source, + opening_loc: Prism::Location, + elements: T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)], + closing_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, opening_loc, elements, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#8370 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#8093 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8375 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8098 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#8442 + # source://prism//lib/prism/node.rb#8161 sig { returns(String) } def closing; end @@ -13392,41 +14788,46 @@ class Prism::HashNode < ::Prism::Node # { a => b } # ^ # - # source://prism//lib/prism/node.rb#8430 + # source://prism//lib/prism/node.rb#8148 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#8385 + # source://prism//lib/prism/node.rb#8108 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#8380 + # source://prism//lib/prism/node.rb#8103 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> HashNode + # def copy: (?opening_loc: Location, ?elements: Array[AssocNode | AssocSplatNode], ?closing_loc: Location, ?location: Location) -> HashNode # - # source://prism//lib/prism/node.rb#8390 - sig { params(params: T.untyped).returns(Prism::HashNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#8113 + sig do + params( + opening_loc: Prism::Location, + elements: T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)], + closing_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::HashNode) + end + def copy(opening_loc: T.unsafe(nil), elements: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8375 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8098 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { opening_loc: Location, elements: Array[Node], closing_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { opening_loc: Location, elements: Array[AssocNode | AssocSplatNode], closing_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#8404 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#8121 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # The elements of the hash. These can be either `AssocNode`s or `AssocSplatNode`s. @@ -13437,18 +14838,22 @@ class Prism::HashNode < ::Prism::Node # { **foo } # ^^^^^ # - # source://prism//lib/prism/node.rb#8424 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#8142 + sig { returns(T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)]) } def elements; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#8447 + # source://prism//lib/prism/node.rb#8166 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String # - # source://prism//lib/prism/node.rb#8437 + # source://prism//lib/prism/node.rb#8156 sig { returns(String) } def opening; end @@ -13457,7 +14862,7 @@ class Prism::HashNode < ::Prism::Node # { a => b } # ^ # - # source://prism//lib/prism/node.rb#8412 + # source://prism//lib/prism/node.rb#8129 sig { returns(Prism::Location) } def opening_loc; end @@ -13476,7 +14881,8 @@ class Prism::HashNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#8469 + # source://prism//lib/prism/node.rb#8188 + sig { override.returns(Symbol) } def type; end class << self @@ -13487,7 +14893,7 @@ class Prism::HashNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#8479 + # source://prism//lib/prism/node.rb#8198 def type; end end end @@ -13500,105 +14906,127 @@ end # foo => { a: 1, b: 2, **c } # ^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#8491 +# source://prism//lib/prism/node.rb#8210 class Prism::HashPatternNode < ::Prism::Node - # def initialize: (Node? constant, Array[Node] elements, Node? rest, Location? opening_loc, Location? closing_loc, Location location) -> void + # def initialize: (Prism::node? constant, Array[AssocNode] elements, AssocSplatNode | NoKeywordsParameterNode | nil rest, Location? opening_loc, Location? closing_loc, Location location) -> void # # @return [HashPatternNode] a new instance of HashPatternNode # - # source://prism//lib/prism/node.rb#8493 + # source://prism//lib/prism/node.rb#8212 + sig do + params( + source: Prism::Source, + constant: T.nilable(Prism::Node), + elements: T::Array[Prism::AssocNode], + rest: T.nilable(T.any(Prism::AssocSplatNode, Prism::NoKeywordsParameterNode)), + opening_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, constant, elements, rest, opening_loc, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#8505 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#8224 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8510 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8229 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#8589 + # source://prism//lib/prism/node.rb#8302 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#8571 + # source://prism//lib/prism/node.rb#8283 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#8524 + # source://prism//lib/prism/node.rb#8243 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#8515 + # source://prism//lib/prism/node.rb#8234 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # attr_reader constant: Node? + # attr_reader constant: Prism::node? # - # source://prism//lib/prism/node.rb#8550 + # source://prism//lib/prism/node.rb#8261 sig { returns(T.nilable(Prism::Node)) } def constant; end - # def copy: (**params) -> HashPatternNode + # def copy: (?constant: Prism::node?, ?elements: Array[AssocNode], ?rest: AssocSplatNode | NoKeywordsParameterNode | nil, ?opening_loc: Location?, ?closing_loc: Location?, ?location: Location) -> HashPatternNode # - # source://prism//lib/prism/node.rb#8529 - sig { params(params: T.untyped).returns(Prism::HashPatternNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#8248 + sig do + params( + constant: T.nilable(Prism::Node), + elements: T::Array[Prism::AssocNode], + rest: T.nilable(T.any(Prism::AssocSplatNode, Prism::NoKeywordsParameterNode)), + opening_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::HashPatternNode) + end + def copy(constant: T.unsafe(nil), elements: T.unsafe(nil), rest: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8510 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8229 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { constant: Node?, elements: Array[Node], rest: Node?, opening_loc: Location?, closing_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { constant: Prism::node?, elements: Array[AssocNode], rest: AssocSplatNode | NoKeywordsParameterNode | nil, opening_loc: Location?, closing_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#8545 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#8256 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # attr_reader elements: Array[Node] + # attr_reader elements: Array[AssocNode] # - # source://prism//lib/prism/node.rb#8553 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#8264 + sig { returns(T::Array[Prism::AssocNode]) } def elements; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#8594 + # source://prism//lib/prism/node.rb#8307 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String? # - # source://prism//lib/prism/node.rb#8584 + # source://prism//lib/prism/node.rb#8297 sig { returns(T.nilable(String)) } def opening; end # attr_reader opening_loc: Location? # - # source://prism//lib/prism/node.rb#8559 + # source://prism//lib/prism/node.rb#8270 sig { returns(T.nilable(Prism::Location)) } def opening_loc; end - # attr_reader rest: Node? + # attr_reader rest: AssocSplatNode | NoKeywordsParameterNode | nil # - # source://prism//lib/prism/node.rb#8556 - sig { returns(T.nilable(Prism::Node)) } + # source://prism//lib/prism/node.rb#8267 + sig { returns(T.nilable(T.any(Prism::AssocSplatNode, Prism::NoKeywordsParameterNode))) } def rest; end # Sometimes you want to check an instance of a node against a list of @@ -13616,7 +15044,8 @@ class Prism::HashPatternNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#8628 + # source://prism//lib/prism/node.rb#8341 + sig { override.returns(Symbol) } def type; end class << self @@ -13627,7 +15056,7 @@ class Prism::HashPatternNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#8638 + # source://prism//lib/prism/node.rb#8351 def type; end end end @@ -13650,119 +15079,143 @@ end # if foo then bar end # ^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#8650 +# source://prism//lib/prism/node.rb#8363 class Prism::IfNode < ::Prism::Node - # def initialize: (Location? if_keyword_loc, Node predicate, Location? then_keyword_loc, StatementsNode? statements, Node? consequent, Location? end_keyword_loc, Location location) -> void + # def initialize: (Location? if_keyword_loc, Prism::node predicate, Location? then_keyword_loc, StatementsNode? statements, Prism::node? consequent, Location? end_keyword_loc, Location location) -> void # # @return [IfNode] a new instance of IfNode # - # source://prism//lib/prism/node.rb#8652 + # source://prism//lib/prism/node.rb#8365 + sig do + params( + source: Prism::Source, + if_keyword_loc: T.nilable(Prism::Location), + predicate: Prism::Node, + then_keyword_loc: T.nilable(Prism::Location), + statements: T.nilable(Prism::StatementsNode), + consequent: T.nilable(Prism::Node), + end_keyword_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, if_keyword_loc, predicate, then_keyword_loc, statements, consequent, end_keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#8665 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#8378 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8674 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8387 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#8688 + # source://prism//lib/prism/node.rb#8401 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#8679 + # source://prism//lib/prism/node.rb#8392 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # attr_reader consequent: Node? + # attr_reader consequent: Prism::node? # - # source://prism//lib/prism/node.rb#8745 + # source://prism//lib/prism/node.rb#8451 sig { returns(T.nilable(Prism::Node)) } def consequent; end - # def copy: (**params) -> IfNode + # def copy: (?if_keyword_loc: Location?, ?predicate: Prism::node, ?then_keyword_loc: Location?, ?statements: StatementsNode?, ?consequent: Prism::node?, ?end_keyword_loc: Location?, ?location: Location) -> IfNode # - # source://prism//lib/prism/node.rb#8693 - sig { params(params: T.untyped).returns(Prism::IfNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#8406 + sig do + params( + if_keyword_loc: T.nilable(Prism::Location), + predicate: Prism::Node, + then_keyword_loc: T.nilable(Prism::Location), + statements: T.nilable(Prism::StatementsNode), + consequent: T.nilable(Prism::Node), + end_keyword_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::IfNode) + end + def copy(if_keyword_loc: T.unsafe(nil), predicate: T.unsafe(nil), then_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), consequent: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8674 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8387 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { if_keyword_loc: Location?, predicate: Node, then_keyword_loc: Location?, statements: StatementsNode?, consequent: Node?, end_keyword_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { if_keyword_loc: Location?, predicate: Prism::node, then_keyword_loc: Location?, statements: StatementsNode?, consequent: Prism::node?, end_keyword_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#8710 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#8414 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def end_keyword: () -> String? # - # source://prism//lib/prism/node.rb#8771 + # source://prism//lib/prism/node.rb#8478 sig { returns(T.nilable(String)) } def end_keyword; end # attr_reader end_keyword_loc: Location? # - # source://prism//lib/prism/node.rb#8748 + # source://prism//lib/prism/node.rb#8454 sig { returns(T.nilable(Prism::Location)) } def end_keyword_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def if_keyword: () -> String? # - # source://prism//lib/prism/node.rb#8761 + # source://prism//lib/prism/node.rb#8468 sig { returns(T.nilable(String)) } def if_keyword; end # attr_reader if_keyword_loc: Location? # - # source://prism//lib/prism/node.rb#8715 + # source://prism//lib/prism/node.rb#8419 sig { returns(T.nilable(Prism::Location)) } def if_keyword_loc; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#8776 + # source://prism//lib/prism/node.rb#8483 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader predicate: Node + # attr_reader predicate: Prism::node # - # source://prism//lib/prism/node.rb#8727 + # source://prism//lib/prism/node.rb#8432 sig { returns(Prism::Node) } def predicate; end - # source://prism//lib/prism/node.rb#8669 + # source://prism//lib/prism/node.rb#8382 def set_newline_flag(newline_marked); end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#8742 + # source://prism//lib/prism/node.rb#8448 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end # def then_keyword: () -> String? # - # source://prism//lib/prism/node.rb#8766 + # source://prism//lib/prism/node.rb#8473 sig { returns(T.nilable(String)) } def then_keyword; end # attr_reader then_keyword_loc: Location? # - # source://prism//lib/prism/node.rb#8730 + # source://prism//lib/prism/node.rb#8435 sig { returns(T.nilable(Prism::Location)) } def then_keyword_loc; end @@ -13781,7 +15234,8 @@ class Prism::IfNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#8812 + # source://prism//lib/prism/node.rb#8519 + sig { override.returns(Symbol) } def type; end class << self @@ -13792,7 +15246,7 @@ class Prism::IfNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#8822 + # source://prism//lib/prism/node.rb#8529 def type; end end end @@ -13802,69 +15256,83 @@ end # 1.0i # ^^^^ # -# source://prism//lib/prism/node.rb#8831 +# source://prism//lib/prism/node.rb#8538 class Prism::ImaginaryNode < ::Prism::Node - # def initialize: (Node numeric, Location location) -> void + # def initialize: (FloatNode | IntegerNode | RationalNode numeric, Location location) -> void # # @return [ImaginaryNode] a new instance of ImaginaryNode # - # source://prism//lib/prism/node.rb#8833 + # source://prism//lib/prism/node.rb#8540 + sig do + params( + source: Prism::Source, + numeric: T.any(Prism::FloatNode, Prism::IntegerNode, Prism::RationalNode), + location: Prism::Location + ).void + end def initialize(source, numeric, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#8841 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#8548 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8846 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8553 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#8856 + # source://prism//lib/prism/node.rb#8563 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#8851 + # source://prism//lib/prism/node.rb#8558 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ImaginaryNode + # def copy: (?numeric: FloatNode | IntegerNode | RationalNode, ?location: Location) -> ImaginaryNode # - # source://prism//lib/prism/node.rb#8861 - sig { params(params: T.untyped).returns(Prism::ImaginaryNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#8568 + sig do + params( + numeric: T.any(Prism::FloatNode, Prism::IntegerNode, Prism::RationalNode), + location: Prism::Location + ).returns(Prism::ImaginaryNode) + end + def copy(numeric: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8846 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8553 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { numeric: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { numeric: FloatNode | IntegerNode | RationalNode, location: Location } # - # source://prism//lib/prism/node.rb#8873 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#8576 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#8882 + # source://prism//lib/prism/node.rb#8585 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader numeric: Node + # attr_reader numeric: FloatNode | IntegerNode | RationalNode # - # source://prism//lib/prism/node.rb#8878 - sig { returns(Prism::Node) } + # source://prism//lib/prism/node.rb#8581 + sig { returns(T.any(Prism::FloatNode, Prism::IntegerNode, Prism::RationalNode)) } def numeric; end # Sometimes you want to check an instance of a node against a list of @@ -13882,12 +15350,14 @@ class Prism::ImaginaryNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#8903 + # source://prism//lib/prism/node.rb#8606 + sig { override.returns(Symbol) } def type; end # Returns the value of the node as a Ruby Complex. # - # source://prism//lib/prism/node_ext.rb#69 + # source://prism//lib/prism/node_ext.rb#87 + sig { returns(Complex) } def value; end class << self @@ -13898,7 +15368,7 @@ class Prism::ImaginaryNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#8913 + # source://prism//lib/prism/node.rb#8616 def type; end end end @@ -13914,63 +15384,66 @@ end # foo in { bar: } # ^^^^ # -# source://prism//lib/prism/node.rb#8928 +# source://prism//lib/prism/node.rb#8631 class Prism::ImplicitNode < ::Prism::Node - # def initialize: (Node value, Location location) -> void + # def initialize: (Prism::node value, Location location) -> void # # @return [ImplicitNode] a new instance of ImplicitNode # - # source://prism//lib/prism/node.rb#8930 + # source://prism//lib/prism/node.rb#8633 + sig { params(source: Prism::Source, value: Prism::Node, location: Prism::Location).void } def initialize(source, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#8938 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#8641 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8943 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8646 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#8953 + # source://prism//lib/prism/node.rb#8656 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#8948 + # source://prism//lib/prism/node.rb#8651 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ImplicitNode + # def copy: (?value: Prism::node, ?location: Location) -> ImplicitNode # - # source://prism//lib/prism/node.rb#8958 - sig { params(params: T.untyped).returns(Prism::ImplicitNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#8661 + sig { params(value: Prism::Node, location: Prism::Location).returns(Prism::ImplicitNode) } + def copy(value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#8943 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8646 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#8970 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#8669 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#8979 + # source://prism//lib/prism/node.rb#8678 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -13988,12 +15461,13 @@ class Prism::ImplicitNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#9000 + # source://prism//lib/prism/node.rb#8699 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#8975 + # source://prism//lib/prism/node.rb#8674 sig { returns(Prism::Node) } def value; end @@ -14005,7 +15479,7 @@ class Prism::ImplicitNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#9010 + # source://prism//lib/prism/node.rb#8709 def type; end end end @@ -14024,63 +15498,66 @@ end # foo, = bar # ^ # -# source://prism//lib/prism/node.rb#9028 +# source://prism//lib/prism/node.rb#8727 class Prism::ImplicitRestNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [ImplicitRestNode] a new instance of ImplicitRestNode # - # source://prism//lib/prism/node.rb#9030 + # source://prism//lib/prism/node.rb#8729 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#9037 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#8736 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9042 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8741 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#9052 + # source://prism//lib/prism/node.rb#8751 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#9047 + # source://prism//lib/prism/node.rb#8746 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ImplicitRestNode + # def copy: (?location: Location) -> ImplicitRestNode # - # source://prism//lib/prism/node.rb#9057 - sig { params(params: T.untyped).returns(Prism::ImplicitRestNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#8756 + sig { params(location: Prism::Location).returns(Prism::ImplicitRestNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9042 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8741 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#9068 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#8764 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#9074 + # source://prism//lib/prism/node.rb#8770 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -14098,7 +15575,8 @@ class Prism::ImplicitRestNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#9093 + # source://prism//lib/prism/node.rb#8789 + sig { override.returns(Symbol) } def type; end class << self @@ -14109,7 +15587,7 @@ class Prism::ImplicitRestNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#9103 + # source://prism//lib/prism/node.rb#8799 def type; end end end @@ -14119,98 +15597,118 @@ end # case a; in b then c end # ^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#9112 +# source://prism//lib/prism/node.rb#8808 class Prism::InNode < ::Prism::Node - # def initialize: (Node pattern, StatementsNode? statements, Location in_loc, Location? then_loc, Location location) -> void + # def initialize: (Prism::node pattern, StatementsNode? statements, Location in_loc, Location? then_loc, Location location) -> void # # @return [InNode] a new instance of InNode # - # source://prism//lib/prism/node.rb#9114 + # source://prism//lib/prism/node.rb#8810 + sig do + params( + source: Prism::Source, + pattern: Prism::Node, + statements: T.nilable(Prism::StatementsNode), + in_loc: Prism::Location, + then_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, pattern, statements, in_loc, then_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#9125 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#8821 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9130 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8826 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#9143 + # source://prism//lib/prism/node.rb#8839 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#9135 + # source://prism//lib/prism/node.rb#8831 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InNode + # def copy: (?pattern: Prism::node, ?statements: StatementsNode?, ?in_loc: Location, ?then_loc: Location?, ?location: Location) -> InNode # - # source://prism//lib/prism/node.rb#9148 - sig { params(params: T.untyped).returns(Prism::InNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#8844 + sig do + params( + pattern: Prism::Node, + statements: T.nilable(Prism::StatementsNode), + in_loc: Prism::Location, + then_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::InNode) + end + def copy(pattern: T.unsafe(nil), statements: T.unsafe(nil), in_loc: T.unsafe(nil), then_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9130 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8826 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { pattern: Node, statements: StatementsNode?, in_loc: Location, then_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { pattern: Prism::node, statements: StatementsNode?, in_loc: Location, then_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#9163 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#8852 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def in: () -> String # - # source://prism//lib/prism/node.rb#9193 + # source://prism//lib/prism/node.rb#8884 sig { returns(String) } def in; end # attr_reader in_loc: Location # - # source://prism//lib/prism/node.rb#9174 + # source://prism//lib/prism/node.rb#8863 sig { returns(Prism::Location) } def in_loc; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#9203 + # source://prism//lib/prism/node.rb#8894 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader pattern: Node + # attr_reader pattern: Prism::node # - # source://prism//lib/prism/node.rb#9168 + # source://prism//lib/prism/node.rb#8857 sig { returns(Prism::Node) } def pattern; end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#9171 + # source://prism//lib/prism/node.rb#8860 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end # def then: () -> String? # - # source://prism//lib/prism/node.rb#9198 + # source://prism//lib/prism/node.rb#8889 sig { returns(T.nilable(String)) } def then; end # attr_reader then_loc: Location? # - # source://prism//lib/prism/node.rb#9180 + # source://prism//lib/prism/node.rb#8870 sig { returns(T.nilable(Prism::Location)) } def then_loc; end @@ -14229,7 +15727,8 @@ class Prism::InNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#9232 + # source://prism//lib/prism/node.rb#8923 + sig { override.returns(Symbol) } def type; end class << self @@ -14240,7 +15739,7 @@ class Prism::InNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#9242 + # source://prism//lib/prism/node.rb#8933 def type; end end end @@ -14250,24 +15749,39 @@ end # foo.bar[baz] &&= value # ^^^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#9251 +# source://prism//lib/prism/node.rb#8942 class Prism::IndexAndWriteNode < ::Prism::Node - # def initialize: (Integer flags, Node? receiver, Location? call_operator_loc, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Node? block, Location operator_loc, Node value, Location location) -> void + # def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Prism::node? block, Location operator_loc, Prism::node value, Location location) -> void # # @return [IndexAndWriteNode] a new instance of IndexAndWriteNode # - # source://prism//lib/prism/node.rb#9253 + # source://prism//lib/prism/node.rb#8944 + sig do + params( + source: Prism::Source, + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + opening_loc: Prism::Location, + arguments: T.nilable(Prism::ArgumentsNode), + closing_loc: Prism::Location, + block: T.nilable(Prism::Node), + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#9269 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#8960 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader arguments: ArgumentsNode? # - # source://prism//lib/prism/node.rb#9344 + # source://prism//lib/prism/node.rb#9025 sig { returns(T.nilable(Prism::ArgumentsNode)) } def arguments; end @@ -14275,119 +15789,134 @@ class Prism::IndexAndWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9376 + # source://prism//lib/prism/node.rb#9059 sig { returns(T::Boolean) } def attribute_write?; end - # attr_reader block: Node? + # attr_reader block: Prism::node? # - # source://prism//lib/prism/node.rb#9353 + # source://prism//lib/prism/node.rb#9035 sig { returns(T.nilable(Prism::Node)) } def block; end # def call_operator: () -> String? # - # source://prism//lib/prism/node.rb#9386 + # source://prism//lib/prism/node.rb#9069 sig { returns(T.nilable(String)) } def call_operator; end # attr_reader call_operator_loc: Location? # - # source://prism//lib/prism/node.rb#9326 + # source://prism//lib/prism/node.rb#9005 sig { returns(T.nilable(Prism::Location)) } def call_operator_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9274 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8965 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#9396 + # source://prism//lib/prism/node.rb#9079 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#9347 + # source://prism//lib/prism/node.rb#9028 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#9289 + # source://prism//lib/prism/node.rb#8980 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#9279 + # source://prism//lib/prism/node.rb#8970 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> IndexAndWriteNode + # def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: Prism::node?, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> IndexAndWriteNode # - # source://prism//lib/prism/node.rb#9294 - sig { params(params: T.untyped).returns(Prism::IndexAndWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#8985 + sig do + params( + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + opening_loc: Prism::Location, + arguments: T.nilable(Prism::ArgumentsNode), + closing_loc: Prism::Location, + block: T.nilable(Prism::Node), + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::IndexAndWriteNode) + end + def copy(flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9274 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#8965 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Node?, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Prism::node?, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#9314 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#8993 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def ignore_visibility?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9381 + # source://prism//lib/prism/node.rb#9064 sig { returns(T::Boolean) } def ignore_visibility?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#9406 + # source://prism//lib/prism/node.rb#9089 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String # - # source://prism//lib/prism/node.rb#9391 + # source://prism//lib/prism/node.rb#9074 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#9338 + # source://prism//lib/prism/node.rb#9018 sig { returns(Prism::Location) } def opening_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#9401 + # source://prism//lib/prism/node.rb#9084 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#9356 + # source://prism//lib/prism/node.rb#9038 sig { returns(Prism::Location) } def operator_loc; end - # attr_reader receiver: Node? + # attr_reader receiver: Prism::node? # - # source://prism//lib/prism/node.rb#9323 + # source://prism//lib/prism/node.rb#9002 sig { returns(T.nilable(Prism::Node)) } def receiver; end @@ -14395,7 +15924,7 @@ class Prism::IndexAndWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9366 + # source://prism//lib/prism/node.rb#9049 sig { returns(T::Boolean) } def safe_navigation?; end @@ -14414,12 +15943,13 @@ class Prism::IndexAndWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#9451 + # source://prism//lib/prism/node.rb#9134 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#9362 + # source://prism//lib/prism/node.rb#9045 sig { returns(Prism::Node) } def value; end @@ -14427,7 +15957,7 @@ class Prism::IndexAndWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9371 + # source://prism//lib/prism/node.rb#9054 sig { returns(T::Boolean) } def variable_call?; end @@ -14435,7 +15965,7 @@ class Prism::IndexAndWriteNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#9319 + # source://prism//lib/prism/node.rb#8998 sig { returns(Integer) } def flags; end @@ -14447,7 +15977,7 @@ class Prism::IndexAndWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#9461 + # source://prism//lib/prism/node.rb#9144 def type; end end end @@ -14457,24 +15987,40 @@ end # foo.bar[baz] += value # ^^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#9470 +# source://prism//lib/prism/node.rb#9153 class Prism::IndexOperatorWriteNode < ::Prism::Node - # def initialize: (Integer flags, Node? receiver, Location? call_operator_loc, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Node? block, Symbol operator, Location operator_loc, Node value, Location location) -> void + # def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Prism::node? block, Symbol operator, Location operator_loc, Prism::node value, Location location) -> void # # @return [IndexOperatorWriteNode] a new instance of IndexOperatorWriteNode # - # source://prism//lib/prism/node.rb#9472 + # source://prism//lib/prism/node.rb#9155 + sig do + params( + source: Prism::Source, + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + opening_loc: Prism::Location, + arguments: T.nilable(Prism::ArgumentsNode), + closing_loc: Prism::Location, + block: T.nilable(Prism::Node), + operator: Symbol, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#9489 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#9172 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader arguments: ArgumentsNode? # - # source://prism//lib/prism/node.rb#9565 + # source://prism//lib/prism/node.rb#9237 sig { returns(T.nilable(Prism::ArgumentsNode)) } def arguments; end @@ -14482,119 +16028,135 @@ class Prism::IndexOperatorWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9600 + # source://prism//lib/prism/node.rb#9274 sig { returns(T::Boolean) } def attribute_write?; end - # attr_reader block: Node? + # attr_reader block: Prism::node? # - # source://prism//lib/prism/node.rb#9574 + # source://prism//lib/prism/node.rb#9247 sig { returns(T.nilable(Prism::Node)) } def block; end # def call_operator: () -> String? # - # source://prism//lib/prism/node.rb#9610 + # source://prism//lib/prism/node.rb#9284 sig { returns(T.nilable(String)) } def call_operator; end # attr_reader call_operator_loc: Location? # - # source://prism//lib/prism/node.rb#9547 + # source://prism//lib/prism/node.rb#9217 sig { returns(T.nilable(Prism::Location)) } def call_operator_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9494 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9177 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#9620 + # source://prism//lib/prism/node.rb#9294 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#9568 + # source://prism//lib/prism/node.rb#9240 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#9509 + # source://prism//lib/prism/node.rb#9192 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#9499 + # source://prism//lib/prism/node.rb#9182 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> IndexOperatorWriteNode + # def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: Prism::node?, ?operator: Symbol, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> IndexOperatorWriteNode # - # source://prism//lib/prism/node.rb#9514 - sig { params(params: T.untyped).returns(Prism::IndexOperatorWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#9197 + sig do + params( + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + opening_loc: Prism::Location, + arguments: T.nilable(Prism::ArgumentsNode), + closing_loc: Prism::Location, + block: T.nilable(Prism::Node), + operator: Symbol, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::IndexOperatorWriteNode) + end + def copy(flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), operator: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9494 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9177 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Node?, operator: Symbol, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Prism::node?, operator: Symbol, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#9535 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#9205 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def ignore_visibility?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9605 + # source://prism//lib/prism/node.rb#9279 sig { returns(T::Boolean) } def ignore_visibility?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#9625 + # source://prism//lib/prism/node.rb#9299 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String # - # source://prism//lib/prism/node.rb#9615 + # source://prism//lib/prism/node.rb#9289 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#9559 + # source://prism//lib/prism/node.rb#9230 sig { returns(Prism::Location) } def opening_loc; end # attr_reader operator: Symbol # - # source://prism//lib/prism/node.rb#9577 + # source://prism//lib/prism/node.rb#9250 sig { returns(Symbol) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#9580 + # source://prism//lib/prism/node.rb#9253 sig { returns(Prism::Location) } def operator_loc; end - # attr_reader receiver: Node? + # attr_reader receiver: Prism::node? # - # source://prism//lib/prism/node.rb#9544 + # source://prism//lib/prism/node.rb#9214 sig { returns(T.nilable(Prism::Node)) } def receiver; end @@ -14602,7 +16164,7 @@ class Prism::IndexOperatorWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9590 + # source://prism//lib/prism/node.rb#9264 sig { returns(T::Boolean) } def safe_navigation?; end @@ -14621,12 +16183,13 @@ class Prism::IndexOperatorWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#9671 + # source://prism//lib/prism/node.rb#9345 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#9586 + # source://prism//lib/prism/node.rb#9260 sig { returns(Prism::Node) } def value; end @@ -14634,7 +16197,7 @@ class Prism::IndexOperatorWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9595 + # source://prism//lib/prism/node.rb#9269 sig { returns(T::Boolean) } def variable_call?; end @@ -14642,7 +16205,7 @@ class Prism::IndexOperatorWriteNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#9540 + # source://prism//lib/prism/node.rb#9210 sig { returns(Integer) } def flags; end @@ -14654,7 +16217,7 @@ class Prism::IndexOperatorWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#9681 + # source://prism//lib/prism/node.rb#9355 def type; end end end @@ -14664,24 +16227,39 @@ end # foo.bar[baz] ||= value # ^^^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#9690 +# source://prism//lib/prism/node.rb#9364 class Prism::IndexOrWriteNode < ::Prism::Node - # def initialize: (Integer flags, Node? receiver, Location? call_operator_loc, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Node? block, Location operator_loc, Node value, Location location) -> void + # def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Prism::node? block, Location operator_loc, Prism::node value, Location location) -> void # # @return [IndexOrWriteNode] a new instance of IndexOrWriteNode # - # source://prism//lib/prism/node.rb#9692 + # source://prism//lib/prism/node.rb#9366 + sig do + params( + source: Prism::Source, + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + opening_loc: Prism::Location, + arguments: T.nilable(Prism::ArgumentsNode), + closing_loc: Prism::Location, + block: T.nilable(Prism::Node), + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#9708 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#9382 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader arguments: ArgumentsNode? # - # source://prism//lib/prism/node.rb#9783 + # source://prism//lib/prism/node.rb#9447 sig { returns(T.nilable(Prism::ArgumentsNode)) } def arguments; end @@ -14689,119 +16267,134 @@ class Prism::IndexOrWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9815 + # source://prism//lib/prism/node.rb#9481 sig { returns(T::Boolean) } def attribute_write?; end - # attr_reader block: Node? + # attr_reader block: Prism::node? # - # source://prism//lib/prism/node.rb#9792 + # source://prism//lib/prism/node.rb#9457 sig { returns(T.nilable(Prism::Node)) } def block; end # def call_operator: () -> String? # - # source://prism//lib/prism/node.rb#9825 + # source://prism//lib/prism/node.rb#9491 sig { returns(T.nilable(String)) } def call_operator; end # attr_reader call_operator_loc: Location? # - # source://prism//lib/prism/node.rb#9765 + # source://prism//lib/prism/node.rb#9427 sig { returns(T.nilable(Prism::Location)) } def call_operator_loc; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9713 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9387 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#9835 + # source://prism//lib/prism/node.rb#9501 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#9786 + # source://prism//lib/prism/node.rb#9450 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#9728 + # source://prism//lib/prism/node.rb#9402 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#9718 + # source://prism//lib/prism/node.rb#9392 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> IndexOrWriteNode + # def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: Prism::node?, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> IndexOrWriteNode # - # source://prism//lib/prism/node.rb#9733 - sig { params(params: T.untyped).returns(Prism::IndexOrWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#9407 + sig do + params( + flags: Integer, + receiver: T.nilable(Prism::Node), + call_operator_loc: T.nilable(Prism::Location), + opening_loc: Prism::Location, + arguments: T.nilable(Prism::ArgumentsNode), + closing_loc: Prism::Location, + block: T.nilable(Prism::Node), + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::IndexOrWriteNode) + end + def copy(flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9713 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9387 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Node?, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Prism::node?, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#9753 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#9415 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def ignore_visibility?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9820 + # source://prism//lib/prism/node.rb#9486 sig { returns(T::Boolean) } def ignore_visibility?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#9845 + # source://prism//lib/prism/node.rb#9511 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String # - # source://prism//lib/prism/node.rb#9830 + # source://prism//lib/prism/node.rb#9496 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#9777 + # source://prism//lib/prism/node.rb#9440 sig { returns(Prism::Location) } def opening_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#9840 + # source://prism//lib/prism/node.rb#9506 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#9795 + # source://prism//lib/prism/node.rb#9460 sig { returns(Prism::Location) } def operator_loc; end - # attr_reader receiver: Node? + # attr_reader receiver: Prism::node? # - # source://prism//lib/prism/node.rb#9762 + # source://prism//lib/prism/node.rb#9424 sig { returns(T.nilable(Prism::Node)) } def receiver; end @@ -14809,7 +16402,7 @@ class Prism::IndexOrWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9805 + # source://prism//lib/prism/node.rb#9471 sig { returns(T::Boolean) } def safe_navigation?; end @@ -14828,12 +16421,13 @@ class Prism::IndexOrWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#9890 + # source://prism//lib/prism/node.rb#9556 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#9801 + # source://prism//lib/prism/node.rb#9467 sig { returns(Prism::Node) } def value; end @@ -14841,7 +16435,7 @@ class Prism::IndexOrWriteNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#9810 + # source://prism//lib/prism/node.rb#9476 sig { returns(T::Boolean) } def variable_call?; end @@ -14849,7 +16443,7 @@ class Prism::IndexOrWriteNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#9758 + # source://prism//lib/prism/node.rb#9420 sig { returns(Integer) } def flags; end @@ -14861,7 +16455,7 @@ class Prism::IndexOrWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#9900 + # source://prism//lib/prism/node.rb#9566 def type; end end end @@ -14879,24 +16473,36 @@ end # for foo[bar] in baz do end # ^^^^^^^^ # -# source://prism//lib/prism/node.rb#9917 +# source://prism//lib/prism/node.rb#9583 class Prism::IndexTargetNode < ::Prism::Node - # def initialize: (Integer flags, Node receiver, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Node? block, Location location) -> void + # def initialize: (Integer flags, Prism::node receiver, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Prism::node? block, Location location) -> void # # @return [IndexTargetNode] a new instance of IndexTargetNode # - # source://prism//lib/prism/node.rb#9919 + # source://prism//lib/prism/node.rb#9585 + sig do + params( + source: Prism::Source, + flags: Integer, + receiver: Prism::Node, + opening_loc: Prism::Location, + arguments: T.nilable(Prism::ArgumentsNode), + closing_loc: Prism::Location, + block: T.nilable(Prism::Node), + location: Prism::Location + ).void + end def initialize(source, flags, receiver, opening_loc, arguments, closing_loc, block, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#9932 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#9598 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader arguments: ArgumentsNode? # - # source://prism//lib/prism/node.rb#9991 + # source://prism//lib/prism/node.rb#9649 sig { returns(T.nilable(Prism::ArgumentsNode)) } def arguments; end @@ -14904,95 +16510,107 @@ class Prism::IndexTargetNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10014 + # source://prism//lib/prism/node.rb#9673 sig { returns(T::Boolean) } def attribute_write?; end - # attr_reader block: Node? + # attr_reader block: Prism::node? # - # source://prism//lib/prism/node.rb#10000 + # source://prism//lib/prism/node.rb#9659 sig { returns(T.nilable(Prism::Node)) } def block; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9937 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9603 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#10029 + # source://prism//lib/prism/node.rb#9688 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#9994 + # source://prism//lib/prism/node.rb#9652 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#9951 + # source://prism//lib/prism/node.rb#9617 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#9942 + # source://prism//lib/prism/node.rb#9608 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> IndexTargetNode + # def copy: (?flags: Integer, ?receiver: Prism::node, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: Prism::node?, ?location: Location) -> IndexTargetNode # - # source://prism//lib/prism/node.rb#9956 - sig { params(params: T.untyped).returns(Prism::IndexTargetNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#9622 + sig do + params( + flags: Integer, + receiver: Prism::Node, + opening_loc: Prism::Location, + arguments: T.nilable(Prism::ArgumentsNode), + closing_loc: Prism::Location, + block: T.nilable(Prism::Node), + location: Prism::Location + ).returns(Prism::IndexTargetNode) + end + def copy(flags: T.unsafe(nil), receiver: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#9937 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9603 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Node, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Node?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Prism::node?, location: Location } # - # source://prism//lib/prism/node.rb#9973 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#9630 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def ignore_visibility?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10019 + # source://prism//lib/prism/node.rb#9678 sig { returns(T::Boolean) } def ignore_visibility?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#10034 + # source://prism//lib/prism/node.rb#9693 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String # - # source://prism//lib/prism/node.rb#10024 + # source://prism//lib/prism/node.rb#9683 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#9985 + # source://prism//lib/prism/node.rb#9642 sig { returns(Prism::Location) } def opening_loc; end - # attr_reader receiver: Node + # attr_reader receiver: Prism::node # - # source://prism//lib/prism/node.rb#9982 + # source://prism//lib/prism/node.rb#9639 sig { returns(Prism::Node) } def receiver; end @@ -15000,7 +16618,7 @@ class Prism::IndexTargetNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10004 + # source://prism//lib/prism/node.rb#9663 sig { returns(T::Boolean) } def safe_navigation?; end @@ -15019,14 +16637,15 @@ class Prism::IndexTargetNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#10071 + # source://prism//lib/prism/node.rb#9730 + sig { override.returns(Symbol) } def type; end # def variable_call?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10009 + # source://prism//lib/prism/node.rb#9668 sig { returns(T::Boolean) } def variable_call?; end @@ -15034,7 +16653,7 @@ class Prism::IndexTargetNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#9978 + # source://prism//lib/prism/node.rb#9635 sig { returns(Integer) } def flags; end @@ -15046,7 +16665,7 @@ class Prism::IndexTargetNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#10081 + # source://prism//lib/prism/node.rb#9740 def type; end end end @@ -15054,11 +16673,12 @@ end # InlineComment objects are the most common. They correspond to comments in # the source file like this one that start with #. # -# source://prism//lib/prism/parse_result.rb#275 +# source://prism//lib/prism/parse_result.rb#310 class Prism::InlineComment < ::Prism::Comment # Returns a string representation of this comment. # - # source://prism//lib/prism/parse_result.rb#283 + # source://prism//lib/prism/parse_result.rb#318 + sig { returns(String) } def inspect; end # Returns true if this comment happens on the same line as other code and @@ -15066,7 +16686,7 @@ class Prism::InlineComment < ::Prism::Comment # # @return [Boolean] # - # source://prism//lib/prism/parse_result.rb#278 + # source://prism//lib/prism/parse_result.rb#313 sig { override.returns(T::Boolean) } def trailing?; end end @@ -15076,89 +16696,109 @@ end # @target &&= value # ^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#10090 +# source://prism//lib/prism/node.rb#9749 class Prism::InstanceVariableAndWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void # # @return [InstanceVariableAndWriteNode] a new instance of InstanceVariableAndWriteNode # - # source://prism//lib/prism/node.rb#10092 + # source://prism//lib/prism/node.rb#9751 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#10103 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#9762 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10108 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9767 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#10118 + # source://prism//lib/prism/node.rb#9777 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#10113 + # source://prism//lib/prism/node.rb#9772 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InstanceVariableAndWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> InstanceVariableAndWriteNode # - # source://prism//lib/prism/node.rb#10123 - sig { params(params: T.untyped).returns(Prism::InstanceVariableAndWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#9782 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::InstanceVariableAndWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10108 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9767 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#10138 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#9790 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#179 + # source://prism//lib/prism/desugar_compiler.rb#181 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#10167 + # source://prism//lib/prism/node.rb#9821 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#10143 + # source://prism//lib/prism/node.rb#9795 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#10146 + # source://prism//lib/prism/node.rb#9798 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#10162 + # source://prism//lib/prism/node.rb#9816 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#10152 + # source://prism//lib/prism/node.rb#9805 sig { returns(Prism::Location) } def operator_loc; end @@ -15177,12 +16817,13 @@ class Prism::InstanceVariableAndWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#10191 + # source://prism//lib/prism/node.rb#9845 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#10158 + # source://prism//lib/prism/node.rb#9812 sig { returns(Prism::Node) } def value; end @@ -15194,7 +16835,7 @@ class Prism::InstanceVariableAndWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#10201 + # source://prism//lib/prism/node.rb#9855 def type; end end end @@ -15204,89 +16845,111 @@ end # @target += value # ^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#10210 +# source://prism//lib/prism/node.rb#9864 class Prism::InstanceVariableOperatorWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Symbol operator, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Symbol operator, Location location) -> void # # @return [InstanceVariableOperatorWriteNode] a new instance of InstanceVariableOperatorWriteNode # - # source://prism//lib/prism/node.rb#10212 + # source://prism//lib/prism/node.rb#9866 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + operator: Symbol, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, operator, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#10224 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#9878 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10229 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9883 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#10239 + # source://prism//lib/prism/node.rb#9893 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#10234 + # source://prism//lib/prism/node.rb#9888 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InstanceVariableOperatorWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?operator: Symbol, ?location: Location) -> InstanceVariableOperatorWriteNode # - # source://prism//lib/prism/node.rb#10244 - sig { params(params: T.untyped).returns(Prism::InstanceVariableOperatorWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#9898 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + operator: Symbol, + location: Prism::Location + ).returns(Prism::InstanceVariableOperatorWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), operator: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10229 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9883 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, operator: Symbol, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, operator: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#10260 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#9906 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#191 + # source://prism//lib/prism/desugar_compiler.rb#193 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#10287 + # source://prism//lib/prism/node.rb#9935 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#10265 + # source://prism//lib/prism/node.rb#9911 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#10268 + # source://prism//lib/prism/node.rb#9914 sig { returns(Prism::Location) } def name_loc; end # attr_reader operator: Symbol # - # source://prism//lib/prism/node.rb#10283 + # source://prism//lib/prism/node.rb#9931 sig { returns(Symbol) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#10274 + # source://prism//lib/prism/node.rb#9921 sig { returns(Prism::Location) } def operator_loc; end @@ -15305,12 +16968,13 @@ class Prism::InstanceVariableOperatorWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#10312 + # source://prism//lib/prism/node.rb#9960 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#10280 + # source://prism//lib/prism/node.rb#9928 sig { returns(Prism::Node) } def value; end @@ -15322,7 +16986,7 @@ class Prism::InstanceVariableOperatorWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#10322 + # source://prism//lib/prism/node.rb#9970 def type; end end end @@ -15332,89 +16996,109 @@ end # @target ||= value # ^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#10331 +# source://prism//lib/prism/node.rb#9979 class Prism::InstanceVariableOrWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Location operator_loc, Node value, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void # # @return [InstanceVariableOrWriteNode] a new instance of InstanceVariableOrWriteNode # - # source://prism//lib/prism/node.rb#10333 + # source://prism//lib/prism/node.rb#9981 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#10344 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#9992 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10349 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9997 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#10359 + # source://prism//lib/prism/node.rb#10007 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#10354 + # source://prism//lib/prism/node.rb#10002 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InstanceVariableOrWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> InstanceVariableOrWriteNode # - # source://prism//lib/prism/node.rb#10364 - sig { params(params: T.untyped).returns(Prism::InstanceVariableOrWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#10012 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::InstanceVariableOrWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10349 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#9997 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#10379 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#10020 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # source://prism//lib/prism/desugar_compiler.rb#185 + # source://prism//lib/prism/desugar_compiler.rb#187 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#10408 + # source://prism//lib/prism/node.rb#10051 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#10384 + # source://prism//lib/prism/node.rb#10025 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#10387 + # source://prism//lib/prism/node.rb#10028 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#10403 + # source://prism//lib/prism/node.rb#10046 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#10393 + # source://prism//lib/prism/node.rb#10035 sig { returns(Prism::Location) } def operator_loc; end @@ -15433,12 +17117,13 @@ class Prism::InstanceVariableOrWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#10432 + # source://prism//lib/prism/node.rb#10075 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#10399 + # source://prism//lib/prism/node.rb#10042 sig { returns(Prism::Node) } def value; end @@ -15450,7 +17135,7 @@ class Prism::InstanceVariableOrWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#10442 + # source://prism//lib/prism/node.rb#10085 def type; end end end @@ -15460,63 +17145,66 @@ end # @foo # ^^^^ # -# source://prism//lib/prism/node.rb#10451 +# source://prism//lib/prism/node.rb#10094 class Prism::InstanceVariableReadNode < ::Prism::Node # def initialize: (Symbol name, Location location) -> void # # @return [InstanceVariableReadNode] a new instance of InstanceVariableReadNode # - # source://prism//lib/prism/node.rb#10453 + # source://prism//lib/prism/node.rb#10096 + sig { params(source: Prism::Source, name: Symbol, location: Prism::Location).void } def initialize(source, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#10461 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#10104 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10466 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10109 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#10476 + # source://prism//lib/prism/node.rb#10119 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#10471 + # source://prism//lib/prism/node.rb#10114 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InstanceVariableReadNode + # def copy: (?name: Symbol, ?location: Location) -> InstanceVariableReadNode # - # source://prism//lib/prism/node.rb#10481 - sig { params(params: T.untyped).returns(Prism::InstanceVariableReadNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#10124 + sig { params(name: Symbol, location: Prism::Location).returns(Prism::InstanceVariableReadNode) } + def copy(name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10466 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10109 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#10493 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#10132 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#10506 + # source://prism//lib/prism/node.rb#10145 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # The name of the instance variable, which is a `@` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers). @@ -15525,7 +17213,7 @@ class Prism::InstanceVariableReadNode < ::Prism::Node # # @_test # name `:@_test` # - # source://prism//lib/prism/node.rb#10502 + # source://prism//lib/prism/node.rb#10141 sig { returns(Symbol) } def name; end @@ -15544,7 +17232,8 @@ class Prism::InstanceVariableReadNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#10526 + # source://prism//lib/prism/node.rb#10165 + sig { override.returns(Symbol) } def type; end class << self @@ -15555,7 +17244,7 @@ class Prism::InstanceVariableReadNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#10536 + # source://prism//lib/prism/node.rb#10175 def type; end end end @@ -15565,68 +17254,71 @@ end # @foo, @bar = baz # ^^^^ ^^^^ # -# source://prism//lib/prism/node.rb#10545 +# source://prism//lib/prism/node.rb#10184 class Prism::InstanceVariableTargetNode < ::Prism::Node # def initialize: (Symbol name, Location location) -> void # # @return [InstanceVariableTargetNode] a new instance of InstanceVariableTargetNode # - # source://prism//lib/prism/node.rb#10547 + # source://prism//lib/prism/node.rb#10186 + sig { params(source: Prism::Source, name: Symbol, location: Prism::Location).void } def initialize(source, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#10555 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#10194 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10560 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10199 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#10570 + # source://prism//lib/prism/node.rb#10209 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#10565 + # source://prism//lib/prism/node.rb#10204 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InstanceVariableTargetNode + # def copy: (?name: Symbol, ?location: Location) -> InstanceVariableTargetNode # - # source://prism//lib/prism/node.rb#10575 - sig { params(params: T.untyped).returns(Prism::InstanceVariableTargetNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#10214 + sig { params(name: Symbol, location: Prism::Location).returns(Prism::InstanceVariableTargetNode) } + def copy(name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10560 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10199 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#10587 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#10222 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#10596 + # source://prism//lib/prism/node.rb#10231 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#10592 + # source://prism//lib/prism/node.rb#10227 sig { returns(Symbol) } def name; end @@ -15645,7 +17337,8 @@ class Prism::InstanceVariableTargetNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#10616 + # source://prism//lib/prism/node.rb#10251 + sig { override.returns(Symbol) } def type; end class << self @@ -15656,7 +17349,7 @@ class Prism::InstanceVariableTargetNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#10626 + # source://prism//lib/prism/node.rb#10261 def type; end end end @@ -15666,86 +17359,116 @@ end # @foo = 1 # ^^^^^^^^ # -# source://prism//lib/prism/node.rb#10635 +# source://prism//lib/prism/node.rb#10270 class Prism::InstanceVariableWriteNode < ::Prism::Node - # def initialize: (Symbol name, Location name_loc, Node value, Location operator_loc, Location location) -> void + # def initialize: (Symbol name, Location name_loc, Prism::node value, Location operator_loc, Location location) -> void # # @return [InstanceVariableWriteNode] a new instance of InstanceVariableWriteNode # - # source://prism//lib/prism/node.rb#10637 + # source://prism//lib/prism/node.rb#10272 + sig do + params( + source: Prism::Source, + name: Symbol, + name_loc: Prism::Location, + value: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, name, name_loc, value, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#10648 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#10283 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10653 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10288 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#10663 + # source://prism//lib/prism/node.rb#10298 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#10658 + # source://prism//lib/prism/node.rb#10293 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InstanceVariableWriteNode + # def copy: (?name: Symbol, ?name_loc: Location, ?value: Prism::node, ?operator_loc: Location, ?location: Location) -> InstanceVariableWriteNode # - # source://prism//lib/prism/node.rb#10668 - sig { params(params: T.untyped).returns(Prism::InstanceVariableWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#10303 + sig do + params( + name: Symbol, + name_loc: Prism::Location, + value: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::InstanceVariableWriteNode) + end + def copy(name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10653 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10288 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, value: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, value: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#10683 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#10311 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#10712 + # source://prism//lib/prism/node.rb#10359 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader name: Symbol + # The name of the instance variable, which is a `@` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers). + # + # @x = :y # name `:@x` # - # source://prism//lib/prism/node.rb#10688 + # @_foo = "bar" # name `@_foo` + # + # source://prism//lib/prism/node.rb#10320 sig { returns(Symbol) } def name; end - # attr_reader name_loc: Location + # The location of the variable name. # - # source://prism//lib/prism/node.rb#10691 + # @_x = 1 + # ^^^ + # + # source://prism//lib/prism/node.rb#10326 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#10707 + # source://prism//lib/prism/node.rb#10354 sig { returns(String) } def operator; end - # attr_reader operator_loc: Location + # The location of the `=` operator. # - # source://prism//lib/prism/node.rb#10700 + # @x = y + # ^ + # + # source://prism//lib/prism/node.rb#10346 sig { returns(Prism::Location) } def operator_loc; end @@ -15764,12 +17487,20 @@ class Prism::InstanceVariableWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#10736 + # source://prism//lib/prism/node.rb#10383 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # The value to assign to the instance variable. Can be any node that + # represents a non-void expression. + # + # @foo = :bar + # ^^^^ # - # source://prism//lib/prism/node.rb#10697 + # @_x = 1234 + # ^^^^ + # + # source://prism//lib/prism/node.rb#10340 sig { returns(Prism::Node) } def value; end @@ -15781,34 +17512,34 @@ class Prism::InstanceVariableWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#10746 + # source://prism//lib/prism/node.rb#10393 def type; end end end # Flags for integer nodes that correspond to the base of the integer. # -# source://prism//lib/prism/node.rb#19277 +# source://prism//lib/prism/node.rb#18866 module Prism::IntegerBaseFlags; end # 0b prefix # -# source://prism//lib/prism/node.rb#19279 +# source://prism//lib/prism/node.rb#18868 Prism::IntegerBaseFlags::BINARY = T.let(T.unsafe(nil), Integer) # 0d or no prefix # -# source://prism//lib/prism/node.rb#19282 +# source://prism//lib/prism/node.rb#18871 Prism::IntegerBaseFlags::DECIMAL = T.let(T.unsafe(nil), Integer) # 0x prefix # -# source://prism//lib/prism/node.rb#19288 +# source://prism//lib/prism/node.rb#18877 Prism::IntegerBaseFlags::HEXADECIMAL = T.let(T.unsafe(nil), Integer) # 0o or 0 prefix # -# source://prism//lib/prism/node.rb#19285 +# source://prism//lib/prism/node.rb#18874 Prism::IntegerBaseFlags::OCTAL = T.let(T.unsafe(nil), Integer) # Represents an integer number literal. @@ -15816,94 +17547,97 @@ Prism::IntegerBaseFlags::OCTAL = T.let(T.unsafe(nil), Integer) # 1 # ^ # -# source://prism//lib/prism/node.rb#10755 +# source://prism//lib/prism/node.rb#10402 class Prism::IntegerNode < ::Prism::Node - # def initialize: (Integer flags, Location location) -> void + # def initialize: (Integer flags, Integer value, Location location) -> void # # @return [IntegerNode] a new instance of IntegerNode # - # source://prism//lib/prism/node.rb#10757 - def initialize(source, flags, location); end + # source://prism//lib/prism/node.rb#10404 + sig { params(source: Prism::Source, flags: Integer, value: Integer, location: Prism::Location).void } + def initialize(source, flags, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#10765 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#10413 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def binary?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10807 + # source://prism//lib/prism/node.rb#10454 sig { returns(T::Boolean) } def binary?; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10770 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10418 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#10780 + # source://prism//lib/prism/node.rb#10428 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#10775 + # source://prism//lib/prism/node.rb#10423 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> IntegerNode + # def copy: (?flags: Integer, ?value: Integer, ?location: Location) -> IntegerNode # - # source://prism//lib/prism/node.rb#10785 - sig { params(params: T.untyped).returns(Prism::IntegerNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#10433 + sig { params(flags: Integer, value: Integer, location: Prism::Location).returns(Prism::IntegerNode) } + def copy(flags: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def decimal?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10812 + # source://prism//lib/prism/node.rb#10459 sig { returns(T::Boolean) } def decimal?; end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10770 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10418 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, value: Integer, location: Location } # - # source://prism//lib/prism/node.rb#10797 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#10441 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def hexadecimal?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10822 + # source://prism//lib/prism/node.rb#10469 sig { returns(T::Boolean) } def hexadecimal?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#10827 + # source://prism//lib/prism/node.rb#10474 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def octal?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10817 + # source://prism//lib/prism/node.rb#10464 sig { returns(T::Boolean) } def octal?; end @@ -15922,19 +17656,21 @@ class Prism::IntegerNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#10848 + # source://prism//lib/prism/node.rb#10496 + sig { override.returns(Symbol) } def type; end - # Returns the value of the node as a Ruby Integer. + # The value of the integer literal as a number. # - # source://prism//lib/prism/node_ext.rb#76 + # source://prism//lib/prism/node.rb#10450 + sig { returns(Integer) } def value; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#10802 + # source://prism//lib/prism/node.rb#10446 sig { returns(Integer) } def flags; end @@ -15946,7 +17682,7 @@ class Prism::IntegerNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#10858 + # source://prism//lib/prism/node.rb#10506 def type; end end end @@ -15956,87 +17692,103 @@ end # if /foo #{bar} baz/ then end # ^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#10867 +# source://prism//lib/prism/node.rb#10515 class Prism::InterpolatedMatchLastLineNode < ::Prism::Node include ::Prism::RegularExpressionOptions - # def initialize: (Integer flags, Location opening_loc, Array[Node] parts, Location closing_loc, Location location) -> void + # def initialize: (Integer flags, Location opening_loc, Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] parts, Location closing_loc, Location location) -> void # # @return [InterpolatedMatchLastLineNode] a new instance of InterpolatedMatchLastLineNode # - # source://prism//lib/prism/node.rb#10869 + # source://prism//lib/prism/node.rb#10517 + sig do + params( + source: Prism::Source, + flags: Integer, + opening_loc: Prism::Location, + parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)], + closing_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, flags, opening_loc, parts, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#10880 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#10528 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def ascii_8bit?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10970 + # source://prism//lib/prism/node.rb#10613 sig { returns(T::Boolean) } def ascii_8bit?; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10890 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10538 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#11005 + # source://prism//lib/prism/node.rb#10648 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#10938 + # source://prism//lib/prism/node.rb#10580 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#10900 + # source://prism//lib/prism/node.rb#10548 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#10895 + # source://prism//lib/prism/node.rb#10543 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InterpolatedMatchLastLineNode + # def copy: (?flags: Integer, ?opening_loc: Location, ?parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], ?closing_loc: Location, ?location: Location) -> InterpolatedMatchLastLineNode # - # source://prism//lib/prism/node.rb#10905 - sig { params(params: T.untyped).returns(Prism::InterpolatedMatchLastLineNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#10553 + sig do + params( + flags: Integer, + opening_loc: Prism::Location, + parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)], + closing_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::InterpolatedMatchLastLineNode) + end + def copy(flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#10890 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10538 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, opening_loc: Location, parts: Array[Node], closing_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, opening_loc: Location, parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], closing_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#10920 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#10561 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def euc_jp?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10965 + # source://prism//lib/prism/node.rb#10608 sig { returns(T::Boolean) } def euc_jp?; end @@ -16044,15 +17796,18 @@ class Prism::InterpolatedMatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10950 + # source://prism//lib/prism/node.rb#10593 sig { returns(T::Boolean) } def extended?; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def forced_binary_encoding?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10990 + # source://prism//lib/prism/node.rb#10633 sig { returns(T::Boolean) } def forced_binary_encoding?; end @@ -16060,7 +17815,7 @@ class Prism::InterpolatedMatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10995 + # source://prism//lib/prism/node.rb#10638 sig { returns(T::Boolean) } def forced_us_ascii_encoding?; end @@ -16068,7 +17823,7 @@ class Prism::InterpolatedMatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10985 + # source://prism//lib/prism/node.rb#10628 sig { returns(T::Boolean) } def forced_utf8_encoding?; end @@ -16076,20 +17831,21 @@ class Prism::InterpolatedMatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10945 + # source://prism//lib/prism/node.rb#10588 sig { returns(T::Boolean) } def ignore_case?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#11010 + # source://prism//lib/prism/node.rb#10653 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def multi_line?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10955 + # source://prism//lib/prism/node.rb#10598 sig { returns(T::Boolean) } def multi_line?; end @@ -16097,29 +17853,32 @@ class Prism::InterpolatedMatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10960 + # source://prism//lib/prism/node.rb#10603 sig { returns(T::Boolean) } def once?; end # def opening: () -> String # - # source://prism//lib/prism/node.rb#11000 + # source://prism//lib/prism/node.rb#10643 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#10929 + # source://prism//lib/prism/node.rb#10570 sig { returns(Prism::Location) } def opening_loc; end - # attr_reader parts: Array[Node] + sig { returns(Integer) } + def options; end + + # attr_reader parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] # - # source://prism//lib/prism/node.rb#10935 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#10577 + sig { returns(T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)]) } def parts; end - # source://prism//lib/prism/node.rb#10884 + # source://prism//lib/prism/node.rb#10532 def set_newline_flag(newline_marked); end # Sometimes you want to check an instance of a node against a list of @@ -16137,14 +17896,15 @@ class Prism::InterpolatedMatchLastLineNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#11034 + # source://prism//lib/prism/node.rb#10677 + sig { override.returns(Symbol) } def type; end # def utf_8?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10980 + # source://prism//lib/prism/node.rb#10623 sig { returns(T::Boolean) } def utf_8?; end @@ -16152,7 +17912,7 @@ class Prism::InterpolatedMatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#10975 + # source://prism//lib/prism/node.rb#10618 sig { returns(T::Boolean) } def windows_31j?; end @@ -16160,7 +17920,7 @@ class Prism::InterpolatedMatchLastLineNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#10925 + # source://prism//lib/prism/node.rb#10566 sig { returns(Integer) } def flags; end @@ -16172,7 +17932,7 @@ class Prism::InterpolatedMatchLastLineNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#11044 + # source://prism//lib/prism/node.rb#10687 def type; end end end @@ -16182,87 +17942,103 @@ end # /foo #{bar} baz/ # ^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#11053 +# source://prism//lib/prism/node.rb#10696 class Prism::InterpolatedRegularExpressionNode < ::Prism::Node include ::Prism::RegularExpressionOptions - # def initialize: (Integer flags, Location opening_loc, Array[Node] parts, Location closing_loc, Location location) -> void + # def initialize: (Integer flags, Location opening_loc, Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] parts, Location closing_loc, Location location) -> void # # @return [InterpolatedRegularExpressionNode] a new instance of InterpolatedRegularExpressionNode # - # source://prism//lib/prism/node.rb#11055 + # source://prism//lib/prism/node.rb#10698 + sig do + params( + source: Prism::Source, + flags: Integer, + opening_loc: Prism::Location, + parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)], + closing_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, flags, opening_loc, parts, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#11066 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#10709 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def ascii_8bit?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11156 + # source://prism//lib/prism/node.rb#10794 sig { returns(T::Boolean) } def ascii_8bit?; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11076 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10719 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#11191 + # source://prism//lib/prism/node.rb#10829 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#11124 + # source://prism//lib/prism/node.rb#10761 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#11086 + # source://prism//lib/prism/node.rb#10729 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#11081 + # source://prism//lib/prism/node.rb#10724 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InterpolatedRegularExpressionNode + # def copy: (?flags: Integer, ?opening_loc: Location, ?parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], ?closing_loc: Location, ?location: Location) -> InterpolatedRegularExpressionNode # - # source://prism//lib/prism/node.rb#11091 - sig { params(params: T.untyped).returns(Prism::InterpolatedRegularExpressionNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#10734 + sig do + params( + flags: Integer, + opening_loc: Prism::Location, + parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)], + closing_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::InterpolatedRegularExpressionNode) + end + def copy(flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11076 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10719 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, opening_loc: Location, parts: Array[Node], closing_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, opening_loc: Location, parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], closing_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#11106 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#10742 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def euc_jp?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11151 + # source://prism//lib/prism/node.rb#10789 sig { returns(T::Boolean) } def euc_jp?; end @@ -16270,15 +18046,18 @@ class Prism::InterpolatedRegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11136 + # source://prism//lib/prism/node.rb#10774 sig { returns(T::Boolean) } def extended?; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def forced_binary_encoding?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11176 + # source://prism//lib/prism/node.rb#10814 sig { returns(T::Boolean) } def forced_binary_encoding?; end @@ -16286,7 +18065,7 @@ class Prism::InterpolatedRegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11181 + # source://prism//lib/prism/node.rb#10819 sig { returns(T::Boolean) } def forced_us_ascii_encoding?; end @@ -16294,7 +18073,7 @@ class Prism::InterpolatedRegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11171 + # source://prism//lib/prism/node.rb#10809 sig { returns(T::Boolean) } def forced_utf8_encoding?; end @@ -16302,20 +18081,21 @@ class Prism::InterpolatedRegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11131 + # source://prism//lib/prism/node.rb#10769 sig { returns(T::Boolean) } def ignore_case?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#11196 + # source://prism//lib/prism/node.rb#10834 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def multi_line?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11141 + # source://prism//lib/prism/node.rb#10779 sig { returns(T::Boolean) } def multi_line?; end @@ -16323,29 +18103,32 @@ class Prism::InterpolatedRegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11146 + # source://prism//lib/prism/node.rb#10784 sig { returns(T::Boolean) } def once?; end # def opening: () -> String # - # source://prism//lib/prism/node.rb#11186 + # source://prism//lib/prism/node.rb#10824 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#11115 + # source://prism//lib/prism/node.rb#10751 sig { returns(Prism::Location) } def opening_loc; end - # attr_reader parts: Array[Node] + sig { returns(Integer) } + def options; end + + # attr_reader parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] # - # source://prism//lib/prism/node.rb#11121 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#10758 + sig { returns(T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)]) } def parts; end - # source://prism//lib/prism/node.rb#11070 + # source://prism//lib/prism/node.rb#10713 def set_newline_flag(newline_marked); end # Sometimes you want to check an instance of a node against a list of @@ -16363,14 +18146,15 @@ class Prism::InterpolatedRegularExpressionNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#11220 + # source://prism//lib/prism/node.rb#10858 + sig { override.returns(Symbol) } def type; end # def utf_8?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11166 + # source://prism//lib/prism/node.rb#10804 sig { returns(T::Boolean) } def utf_8?; end @@ -16378,7 +18162,7 @@ class Prism::InterpolatedRegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11161 + # source://prism//lib/prism/node.rb#10799 sig { returns(T::Boolean) } def windows_31j?; end @@ -16386,7 +18170,7 @@ class Prism::InterpolatedRegularExpressionNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#11111 + # source://prism//lib/prism/node.rb#10747 sig { returns(Integer) } def flags; end @@ -16398,7 +18182,7 @@ class Prism::InterpolatedRegularExpressionNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#11230 + # source://prism//lib/prism/node.rb#10868 def type; end end end @@ -16408,98 +18192,139 @@ end # "foo #{bar} baz" # ^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#11239 +# source://prism//lib/prism/node.rb#10877 class Prism::InterpolatedStringNode < ::Prism::Node include ::Prism::HeredocQuery - # def initialize: (Location? opening_loc, Array[Node] parts, Location? closing_loc, Location location) -> void + # def initialize: (Integer flags, Location? opening_loc, Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode | InterpolatedStringNode] parts, Location? closing_loc, Location location) -> void # # @return [InterpolatedStringNode] a new instance of InterpolatedStringNode # - # source://prism//lib/prism/node.rb#11241 - def initialize(source, opening_loc, parts, closing_loc, location); end + # source://prism//lib/prism/node.rb#10879 + sig do + params( + source: Prism::Source, + flags: Integer, + opening_loc: T.nilable(Prism::Location), + parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode, Prism::InterpolatedStringNode)], + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end + def initialize(source, flags, opening_loc, parts, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#11251 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#10890 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11261 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10900 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#11328 + # source://prism//lib/prism/node.rb#10977 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#11310 + # source://prism//lib/prism/node.rb#10948 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#11271 + # source://prism//lib/prism/node.rb#10910 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#11266 + # source://prism//lib/prism/node.rb#10905 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InterpolatedStringNode + # def copy: (?flags: Integer, ?opening_loc: Location?, ?parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode | InterpolatedStringNode], ?closing_loc: Location?, ?location: Location) -> InterpolatedStringNode # - # source://prism//lib/prism/node.rb#11276 - sig { params(params: T.untyped).returns(Prism::InterpolatedStringNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#10915 + sig do + params( + flags: Integer, + opening_loc: T.nilable(Prism::Location), + parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode, Prism::InterpolatedStringNode)], + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::InterpolatedStringNode) + end + def copy(flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11261 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#10900 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { opening_loc: Location?, parts: Array[Node], closing_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, opening_loc: Location?, parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode | InterpolatedStringNode], closing_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#11290 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#10923 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + + # def frozen?: () -> bool + # + # @return [Boolean] + # + # source://prism//lib/prism/node.rb#10962 + sig { returns(T::Boolean) } + def frozen?; end + + sig { returns(T::Boolean) } + def heredoc?; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#11333 + # source://prism//lib/prism/node.rb#10982 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # def opening: () -> String? + # def mutable?: () -> bool # - # source://prism//lib/prism/node.rb#11323 - sig { returns(T.nilable(String)) } - def opening; end + # @return [Boolean] + # + # source://prism//lib/prism/node.rb#10967 + sig { returns(T::Boolean) } + def mutable?; end + + # def opening: () -> String? + # + # source://prism//lib/prism/node.rb#10972 + sig { returns(T.nilable(String)) } + def opening; end # attr_reader opening_loc: Location? # - # source://prism//lib/prism/node.rb#11295 + # source://prism//lib/prism/node.rb#10932 sig { returns(T.nilable(Prism::Location)) } def opening_loc; end - # attr_reader parts: Array[Node] + # attr_reader parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode | InterpolatedStringNode] # - # source://prism//lib/prism/node.rb#11307 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#10945 + sig do + returns(T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode, Prism::InterpolatedStringNode)]) + end def parts; end - # source://prism//lib/prism/node.rb#11255 + # source://prism//lib/prism/node.rb#10894 def set_newline_flag(newline_marked); end # Sometimes you want to check an instance of a node against a list of @@ -16517,9 +18342,18 @@ class Prism::InterpolatedStringNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#11355 + # source://prism//lib/prism/node.rb#11006 + sig { override.returns(Symbol) } def type; end + private + + # private attr_reader flags: Integer + # + # source://prism//lib/prism/node.rb#10928 + sig { returns(Integer) } + def flags; end + class << self # Similar to #type, this method returns a symbol that you can use for # splitting on the type of the node without having to do a long === chain. @@ -16528,106 +18362,135 @@ class Prism::InterpolatedStringNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#11365 + # source://prism//lib/prism/node.rb#11016 def type; end end end +# Flags for interpolated string nodes that indicated mutability if they are also marked as literals. +# +# source://prism//lib/prism/node.rb#18881 +module Prism::InterpolatedStringNodeFlags; end + +# source://prism//lib/prism/node.rb#18883 +Prism::InterpolatedStringNodeFlags::FROZEN = T.let(T.unsafe(nil), Integer) + +# source://prism//lib/prism/node.rb#18886 +Prism::InterpolatedStringNodeFlags::MUTABLE = T.let(T.unsafe(nil), Integer) + # Represents a symbol literal that contains interpolation. # # :"foo #{bar} baz" # ^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#11374 +# source://prism//lib/prism/node.rb#11025 class Prism::InterpolatedSymbolNode < ::Prism::Node - # def initialize: (Location? opening_loc, Array[Node] parts, Location? closing_loc, Location location) -> void + # def initialize: (Location? opening_loc, Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] parts, Location? closing_loc, Location location) -> void # # @return [InterpolatedSymbolNode] a new instance of InterpolatedSymbolNode # - # source://prism//lib/prism/node.rb#11376 + # source://prism//lib/prism/node.rb#11027 + sig do + params( + source: Prism::Source, + opening_loc: T.nilable(Prism::Location), + parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)], + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, opening_loc, parts, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#11386 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#11037 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11396 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11047 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#11463 + # source://prism//lib/prism/node.rb#11110 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#11445 + # source://prism//lib/prism/node.rb#11091 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#11406 + # source://prism//lib/prism/node.rb#11057 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#11401 + # source://prism//lib/prism/node.rb#11052 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InterpolatedSymbolNode + # def copy: (?opening_loc: Location?, ?parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], ?closing_loc: Location?, ?location: Location) -> InterpolatedSymbolNode # - # source://prism//lib/prism/node.rb#11411 - sig { params(params: T.untyped).returns(Prism::InterpolatedSymbolNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#11062 + sig do + params( + opening_loc: T.nilable(Prism::Location), + parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)], + closing_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::InterpolatedSymbolNode) + end + def copy(opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11396 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11047 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { opening_loc: Location?, parts: Array[Node], closing_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { opening_loc: Location?, parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], closing_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#11425 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#11070 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#11468 + # source://prism//lib/prism/node.rb#11115 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String? # - # source://prism//lib/prism/node.rb#11458 + # source://prism//lib/prism/node.rb#11105 sig { returns(T.nilable(String)) } def opening; end # attr_reader opening_loc: Location? # - # source://prism//lib/prism/node.rb#11430 + # source://prism//lib/prism/node.rb#11075 sig { returns(T.nilable(Prism::Location)) } def opening_loc; end - # attr_reader parts: Array[Node] + # attr_reader parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] # - # source://prism//lib/prism/node.rb#11442 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#11088 + sig { returns(T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)]) } def parts; end - # source://prism//lib/prism/node.rb#11390 + # source://prism//lib/prism/node.rb#11041 def set_newline_flag(newline_marked); end # Sometimes you want to check an instance of a node against a list of @@ -16645,7 +18508,8 @@ class Prism::InterpolatedSymbolNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#11490 + # source://prism//lib/prism/node.rb#11137 + sig { override.returns(Symbol) } def type; end class << self @@ -16656,7 +18520,7 @@ class Prism::InterpolatedSymbolNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#11500 + # source://prism//lib/prism/node.rb#11147 def type; end end end @@ -16666,98 +18530,119 @@ end # `foo #{bar} baz` # ^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#11509 +# source://prism//lib/prism/node.rb#11156 class Prism::InterpolatedXStringNode < ::Prism::Node include ::Prism::HeredocQuery - # def initialize: (Location opening_loc, Array[Node] parts, Location closing_loc, Location location) -> void + # def initialize: (Location opening_loc, Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] parts, Location closing_loc, Location location) -> void # # @return [InterpolatedXStringNode] a new instance of InterpolatedXStringNode # - # source://prism//lib/prism/node.rb#11511 + # source://prism//lib/prism/node.rb#11158 + sig do + params( + source: Prism::Source, + opening_loc: Prism::Location, + parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)], + closing_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, opening_loc, parts, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#11521 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#11168 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11531 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11178 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#11586 + # source://prism//lib/prism/node.rb#11229 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#11574 + # source://prism//lib/prism/node.rb#11216 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#11541 + # source://prism//lib/prism/node.rb#11188 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#11536 + # source://prism//lib/prism/node.rb#11183 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> InterpolatedXStringNode + # def copy: (?opening_loc: Location, ?parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], ?closing_loc: Location, ?location: Location) -> InterpolatedXStringNode # - # source://prism//lib/prism/node.rb#11546 - sig { params(params: T.untyped).returns(Prism::InterpolatedXStringNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#11193 + sig do + params( + opening_loc: Prism::Location, + parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)], + closing_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::InterpolatedXStringNode) + end + def copy(opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11531 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11178 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { opening_loc: Location, parts: Array[Node], closing_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { opening_loc: Location, parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], closing_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#11560 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#11201 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + + sig { returns(T::Boolean) } + def heredoc?; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#11591 + # source://prism//lib/prism/node.rb#11234 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String # - # source://prism//lib/prism/node.rb#11581 + # source://prism//lib/prism/node.rb#11224 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#11565 + # source://prism//lib/prism/node.rb#11206 sig { returns(Prism::Location) } def opening_loc; end - # attr_reader parts: Array[Node] + # attr_reader parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] # - # source://prism//lib/prism/node.rb#11571 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#11213 + sig { returns(T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)]) } def parts; end - # source://prism//lib/prism/node.rb#11525 + # source://prism//lib/prism/node.rb#11172 def set_newline_flag(newline_marked); end # Sometimes you want to check an instance of a node against a list of @@ -16775,7 +18660,107 @@ class Prism::InterpolatedXStringNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#11613 + # source://prism//lib/prism/node.rb#11256 + sig { override.returns(Symbol) } + def type; end + + class << self + # Similar to #type, this method returns a symbol that you can use for + # splitting on the type of the node without having to do a long === chain. + # Note that like #type, it will still be slower than using == for a single + # class, but should be faster in a case statement or an array comparison. + # + # def self.type: () -> Symbol + # + # source://prism//lib/prism/node.rb#11266 + def type; end + end +end + +# Represents an implicit set of parameters through the use of the `it` keyword within a block or lambda. +# +# -> { it + it } +# ^^^^^^^^^^^^^^ +# +# source://prism//lib/prism/node.rb#11275 +class Prism::ItParametersNode < ::Prism::Node + # def initialize: (Location location) -> void + # + # @return [ItParametersNode] a new instance of ItParametersNode + # + # source://prism//lib/prism/node.rb#11277 + sig { params(source: Prism::Source, location: Prism::Location).void } + def initialize(source, location); end + + # def accept: (Visitor visitor) -> void + # + # source://prism//lib/prism/node.rb#11284 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } + def accept(visitor); end + + # def child_nodes: () -> Array[nil | Node] + # + # source://prism//lib/prism/node.rb#11289 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } + def child_nodes; end + + # def comment_targets: () -> Array[Node | Location] + # + # source://prism//lib/prism/node.rb#11299 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } + def comment_targets; end + + # def compact_child_nodes: () -> Array[Node] + # + # source://prism//lib/prism/node.rb#11294 + sig { override.returns(T::Array[Prism::Node]) } + def compact_child_nodes; end + + # def copy: (?location: Location) -> ItParametersNode + # + # source://prism//lib/prism/node.rb#11304 + sig { params(location: Prism::Location).returns(Prism::ItParametersNode) } + def copy(location: T.unsafe(nil)); end + + # def child_nodes: () -> Array[nil | Node] + # def deconstruct: () -> Array[nil | Node] + # + # source://prism//lib/prism/node.rb#11289 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } + def deconstruct; end + + # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } + # + # source://prism//lib/prism/node.rb#11312 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } + def deconstruct_keys(keys); end + + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + + # def inspect(NodeInspector inspector) -> String + # + # source://prism//lib/prism/node.rb#11318 + sig { params(inspector: T.untyped).returns(String) } + def inspect(inspector = T.unsafe(nil)); end + + # Sometimes you want to check an instance of a node against a list of + # classes to see what kind of behavior to perform. Usually this is done by + # calling `[cls1, cls2].include?(node.class)` or putting the node into a + # case statement and doing `case node; when cls1; when cls2; end`. Both of + # these approaches are relatively slow because of the constant lookups, + # method calls, and/or array allocations. + # + # Instead, you can call #type, which will return to you a symbol that you + # can use for comparison. This is faster than the other approaches because + # it uses a single integer comparison, but also because if you're on CRuby + # you can take advantage of the fact that case statements with all symbol + # keys will use a jump table. + # + # def type: () -> Symbol + # + # source://prism//lib/prism/node.rb#11337 + sig { override.returns(Symbol) } def type; end class << self @@ -16786,7 +18771,7 @@ class Prism::InterpolatedXStringNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#11623 + # source://prism//lib/prism/node.rb#11347 def type; end end end @@ -16796,76 +18781,92 @@ end # foo(a: b) # ^^^^ # -# source://prism//lib/prism/node.rb#11632 +# source://prism//lib/prism/node.rb#11356 class Prism::KeywordHashNode < ::Prism::Node - # def initialize: (Integer flags, Array[Node] elements, Location location) -> void + # def initialize: (Integer flags, Array[AssocNode | AssocSplatNode] elements, Location location) -> void # # @return [KeywordHashNode] a new instance of KeywordHashNode # - # source://prism//lib/prism/node.rb#11634 + # source://prism//lib/prism/node.rb#11358 + sig do + params( + source: Prism::Source, + flags: Integer, + elements: T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)], + location: Prism::Location + ).void + end def initialize(source, flags, elements, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#11643 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#11367 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11648 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11372 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#11658 + # source://prism//lib/prism/node.rb#11382 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#11653 + # source://prism//lib/prism/node.rb#11377 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> KeywordHashNode + # def copy: (?flags: Integer, ?elements: Array[AssocNode | AssocSplatNode], ?location: Location) -> KeywordHashNode # - # source://prism//lib/prism/node.rb#11663 - sig { params(params: T.untyped).returns(Prism::KeywordHashNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#11387 + sig do + params( + flags: Integer, + elements: T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)], + location: Prism::Location + ).returns(Prism::KeywordHashNode) + end + def copy(flags: T.unsafe(nil), elements: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11648 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11372 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, elements: Array[Node], location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, elements: Array[AssocNode | AssocSplatNode], location: Location } # - # source://prism//lib/prism/node.rb#11676 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#11395 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # attr_reader elements: Array[Node] + # attr_reader elements: Array[AssocNode | AssocSplatNode] # - # source://prism//lib/prism/node.rb#11685 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#11404 + sig { returns(T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)]) } def elements; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#11694 + # source://prism//lib/prism/node.rb#11413 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def symbol_keys?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11689 + # source://prism//lib/prism/node.rb#11408 sig { returns(T::Boolean) } def symbol_keys?; end @@ -16884,14 +18885,15 @@ class Prism::KeywordHashNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#11716 + # source://prism//lib/prism/node.rb#11435 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#11681 + # source://prism//lib/prism/node.rb#11400 sig { returns(Integer) } def flags; end @@ -16903,19 +18905,19 @@ class Prism::KeywordHashNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#11726 + # source://prism//lib/prism/node.rb#11445 def type; end end end # Flags for keyword hash nodes. # -# source://prism//lib/prism/node.rb#19292 +# source://prism//lib/prism/node.rb#18890 module Prism::KeywordHashNodeFlags; end # a keyword hash which only has `AssocNode` elements all with symbol keys, which means the elements can be treated as keyword arguments # -# source://prism//lib/prism/node.rb#19294 +# source://prism//lib/prism/node.rb#18892 Prism::KeywordHashNodeFlags::SYMBOL_KEYS = T.let(T.unsafe(nil), Integer) # Represents a keyword rest parameter to a method, block, or lambda definition. @@ -16924,86 +18926,106 @@ Prism::KeywordHashNodeFlags::SYMBOL_KEYS = T.let(T.unsafe(nil), Integer) # ^^^ # end # -# source://prism//lib/prism/node.rb#11736 +# source://prism//lib/prism/node.rb#11455 class Prism::KeywordRestParameterNode < ::Prism::Node # def initialize: (Integer flags, Symbol? name, Location? name_loc, Location operator_loc, Location location) -> void # # @return [KeywordRestParameterNode] a new instance of KeywordRestParameterNode # - # source://prism//lib/prism/node.rb#11738 + # source://prism//lib/prism/node.rb#11457 + sig do + params( + source: Prism::Source, + flags: Integer, + name: T.nilable(Symbol), + name_loc: T.nilable(Prism::Location), + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, flags, name, name_loc, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#11749 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#11468 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11754 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11473 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#11764 + # source://prism//lib/prism/node.rb#11483 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#11759 + # source://prism//lib/prism/node.rb#11478 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> KeywordRestParameterNode + # def copy: (?flags: Integer, ?name: Symbol?, ?name_loc: Location?, ?operator_loc: Location, ?location: Location) -> KeywordRestParameterNode # - # source://prism//lib/prism/node.rb#11769 - sig { params(params: T.untyped).returns(Prism::KeywordRestParameterNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#11488 + sig do + params( + flags: Integer, + name: T.nilable(Symbol), + name_loc: T.nilable(Prism::Location), + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::KeywordRestParameterNode) + end + def copy(flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11754 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11473 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, name: Symbol?, name_loc: Location?, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#11784 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#11496 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#11825 + # source://prism//lib/prism/node.rb#11539 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol? # - # source://prism//lib/prism/node.rb#11793 + # source://prism//lib/prism/node.rb#11505 sig { returns(T.nilable(Symbol)) } def name; end # attr_reader name_loc: Location? # - # source://prism//lib/prism/node.rb#11796 + # source://prism//lib/prism/node.rb#11508 sig { returns(T.nilable(Prism::Location)) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#11820 + # source://prism//lib/prism/node.rb#11534 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#11808 + # source://prism//lib/prism/node.rb#11521 sig { returns(Prism::Location) } def operator_loc; end @@ -17011,7 +19033,7 @@ class Prism::KeywordRestParameterNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#11815 + # source://prism//lib/prism/node.rb#11529 sig { returns(T::Boolean) } def repeated_parameter?; end @@ -17030,14 +19052,15 @@ class Prism::KeywordRestParameterNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#11853 + # source://prism//lib/prism/node.rb#11567 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#11789 + # source://prism//lib/prism/node.rb#11501 sig { returns(Integer) } def flags; end @@ -17049,7 +19072,7 @@ class Prism::KeywordRestParameterNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#11863 + # source://prism//lib/prism/node.rb#11577 def type; end end end @@ -17059,116 +19082,140 @@ end # ->(value) { value * 2 } # ^^^^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#11872 +# source://prism//lib/prism/node.rb#11586 class Prism::LambdaNode < ::Prism::Node - # def initialize: (Array[Symbol] locals, Location operator_loc, Location opening_loc, Location closing_loc, Node? parameters, Node? body, Location location) -> void + # def initialize: (Array[Symbol] locals, Location operator_loc, Location opening_loc, Location closing_loc, Prism::node? parameters, Prism::node? body, Location location) -> void # # @return [LambdaNode] a new instance of LambdaNode # - # source://prism//lib/prism/node.rb#11874 + # source://prism//lib/prism/node.rb#11588 + sig do + params( + source: Prism::Source, + locals: T::Array[Symbol], + operator_loc: Prism::Location, + opening_loc: Prism::Location, + closing_loc: Prism::Location, + parameters: T.nilable(Prism::Node), + body: T.nilable(Prism::Node), + location: Prism::Location + ).void + end def initialize(source, locals, operator_loc, opening_loc, closing_loc, parameters, body, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#11887 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#11601 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader body: Node? + # attr_reader body: Prism::node? # - # source://prism//lib/prism/node.rb#11956 + # source://prism//lib/prism/node.rb#11664 sig { returns(T.nilable(Prism::Node)) } def body; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11892 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11606 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#11970 + # source://prism//lib/prism/node.rb#11678 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#11947 + # source://prism//lib/prism/node.rb#11654 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#11905 + # source://prism//lib/prism/node.rb#11619 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#11897 + # source://prism//lib/prism/node.rb#11611 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> LambdaNode + # def copy: (?locals: Array[Symbol], ?operator_loc: Location, ?opening_loc: Location, ?closing_loc: Location, ?parameters: Prism::node?, ?body: Prism::node?, ?location: Location) -> LambdaNode # - # source://prism//lib/prism/node.rb#11910 - sig { params(params: T.untyped).returns(Prism::LambdaNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#11624 + sig do + params( + locals: T::Array[Symbol], + operator_loc: Prism::Location, + opening_loc: Prism::Location, + closing_loc: Prism::Location, + parameters: T.nilable(Prism::Node), + body: T.nilable(Prism::Node), + location: Prism::Location + ).returns(Prism::LambdaNode) + end + def copy(locals: T.unsafe(nil), operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), parameters: T.unsafe(nil), body: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#11892 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11606 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], operator_loc: Location, opening_loc: Location, closing_loc: Location, parameters: Node?, body: Node?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], operator_loc: Location, opening_loc: Location, closing_loc: Location, parameters: Prism::node?, body: Prism::node?, location: Location } # - # source://prism//lib/prism/node.rb#11927 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#11632 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#11975 + # source://prism//lib/prism/node.rb#11683 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader locals: Array[Symbol] # - # source://prism//lib/prism/node.rb#11932 + # source://prism//lib/prism/node.rb#11637 sig { returns(T::Array[Symbol]) } def locals; end # def opening: () -> String # - # source://prism//lib/prism/node.rb#11965 + # source://prism//lib/prism/node.rb#11673 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#11941 + # source://prism//lib/prism/node.rb#11647 sig { returns(Prism::Location) } def opening_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#11960 + # source://prism//lib/prism/node.rb#11668 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#11935 + # source://prism//lib/prism/node.rb#11640 sig { returns(Prism::Location) } def operator_loc; end - # attr_reader parameters: Node? + # attr_reader parameters: Prism::node? # - # source://prism//lib/prism/node.rb#11953 + # source://prism//lib/prism/node.rb#11661 sig { returns(T.nilable(Prism::Node)) } def parameters; end @@ -17187,7 +19234,8 @@ class Prism::LambdaNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#12010 + # source://prism//lib/prism/node.rb#11718 + sig { override.returns(Symbol) } def type; end class << self @@ -17198,7 +19246,7 @@ class Prism::LambdaNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#12020 + # source://prism//lib/prism/node.rb#11728 def type; end end end @@ -17213,29 +19261,29 @@ end class Prism::LexCompat # @return [LexCompat] a new instance of LexCompat # - # source://prism//lib/prism/lex_compat.rb#600 + # source://prism//lib/prism/lex_compat.rb#602 def initialize(source, **options); end # Returns the value of attribute options. # - # source://prism//lib/prism/lex_compat.rb#598 + # source://prism//lib/prism/lex_compat.rb#600 def options; end - # source://prism//lib/prism/lex_compat.rb#605 + # source://prism//lib/prism/lex_compat.rb#607 def result; end # Returns the value of attribute source. # - # source://prism//lib/prism/lex_compat.rb#598 + # source://prism//lib/prism/lex_compat.rb#600 def source; end end # Ripper doesn't include the rest of the token in the event, so we need to # trim it down to just the content on the first line when comparing. # -# source://prism//lib/prism/lex_compat.rb#211 +# source://prism//lib/prism/lex_compat.rb#213 class Prism::LexCompat::EndContentToken < ::Prism::LexCompat::Token - # source://prism//lib/prism/lex_compat.rb#212 + # source://prism//lib/prism/lex_compat.rb#214 def ==(other); end end @@ -17243,13 +19291,13 @@ end # heredoc that should be appended onto the list of tokens when the heredoc # closes. # -# source://prism//lib/prism/lex_compat.rb#272 +# source://prism//lib/prism/lex_compat.rb#274 module Prism::LexCompat::Heredoc class << self # Here we will split between the two types of heredocs and return the # object that will store their tokens. # - # source://prism//lib/prism/lex_compat.rb#584 + # source://prism//lib/prism/lex_compat.rb#586 def build(opening); end end end @@ -17258,23 +19306,23 @@ end # that need to be split on "\\\n" to mimic Ripper's behavior. We also need # to keep track of the state that the heredoc was opened in. # -# source://prism//lib/prism/lex_compat.rb#296 +# source://prism//lib/prism/lex_compat.rb#298 class Prism::LexCompat::Heredoc::DashHeredoc # @return [DashHeredoc] a new instance of DashHeredoc # - # source://prism//lib/prism/lex_compat.rb#299 + # source://prism//lib/prism/lex_compat.rb#301 def initialize(split); end - # source://prism//lib/prism/lex_compat.rb#304 + # source://prism//lib/prism/lex_compat.rb#306 def <<(token); end - # source://prism//lib/prism/lex_compat.rb#297 + # source://prism//lib/prism/lex_compat.rb#299 def split; end - # source://prism//lib/prism/lex_compat.rb#308 + # source://prism//lib/prism/lex_compat.rb#310 def to_a; end - # source://prism//lib/prism/lex_compat.rb#297 + # source://prism//lib/prism/lex_compat.rb#299 def tokens; end end @@ -17289,45 +19337,45 @@ end # some extra manipulation on the tokens to make them match Ripper's # output by mirroring the dedent logic that Ripper uses. # -# source://prism//lib/prism/lex_compat.rb#355 +# source://prism//lib/prism/lex_compat.rb#357 class Prism::LexCompat::Heredoc::DedentingHeredoc # @return [DedentingHeredoc] a new instance of DedentingHeredoc # - # source://prism//lib/prism/lex_compat.rb#360 + # source://prism//lib/prism/lex_compat.rb#362 def initialize; end # As tokens are coming in, we track the minimum amount of common leading # whitespace on plain string content tokens. This allows us to later # remove that amount of whitespace from the beginning of each line. # - # source://prism//lib/prism/lex_compat.rb#371 + # source://prism//lib/prism/lex_compat.rb#373 def <<(token); end # Returns the value of attribute dedent. # - # source://prism//lib/prism/lex_compat.rb#358 + # source://prism//lib/prism/lex_compat.rb#360 def dedent; end # Returns the value of attribute dedent_next. # - # source://prism//lib/prism/lex_compat.rb#358 + # source://prism//lib/prism/lex_compat.rb#360 def dedent_next; end # Returns the value of attribute embexpr_balance. # - # source://prism//lib/prism/lex_compat.rb#358 + # source://prism//lib/prism/lex_compat.rb#360 def embexpr_balance; end - # source://prism//lib/prism/lex_compat.rb#408 + # source://prism//lib/prism/lex_compat.rb#410 def to_a; end # Returns the value of attribute tokens. # - # source://prism//lib/prism/lex_compat.rb#358 + # source://prism//lib/prism/lex_compat.rb#360 def tokens; end end -# source://prism//lib/prism/lex_compat.rb#356 +# source://prism//lib/prism/lex_compat.rb#358 Prism::LexCompat::Heredoc::DedentingHeredoc::TAB_WIDTH = T.let(T.unsafe(nil), Integer) # Heredocs that are no dash or tilde heredocs are just a list of tokens. @@ -17335,20 +19383,20 @@ Prism::LexCompat::Heredoc::DedentingHeredoc::TAB_WIDTH = T.let(T.unsafe(nil), In # order back into the token stream and set the state of the last token to # the state that the heredoc was opened in. # -# source://prism//lib/prism/lex_compat.rb#277 +# source://prism//lib/prism/lex_compat.rb#279 class Prism::LexCompat::Heredoc::PlainHeredoc # @return [PlainHeredoc] a new instance of PlainHeredoc # - # source://prism//lib/prism/lex_compat.rb#280 + # source://prism//lib/prism/lex_compat.rb#282 def initialize; end - # source://prism//lib/prism/lex_compat.rb#284 + # source://prism//lib/prism/lex_compat.rb#286 def <<(token); end - # source://prism//lib/prism/lex_compat.rb#288 + # source://prism//lib/prism/lex_compat.rb#290 def to_a; end - # source://prism//lib/prism/lex_compat.rb#278 + # source://prism//lib/prism/lex_compat.rb#280 def tokens; end end @@ -17357,27 +19405,27 @@ end # through named captures in regular expressions). In that case we don't # compare the state. # -# source://prism//lib/prism/lex_compat.rb#229 +# source://prism//lib/prism/lex_compat.rb#231 class Prism::LexCompat::IdentToken < ::Prism::LexCompat::Token - # source://prism//lib/prism/lex_compat.rb#230 + # source://prism//lib/prism/lex_compat.rb#232 def ==(other); end end # Tokens where state should be ignored # used for :on_comment, :on_heredoc_end, :on_embexpr_end # -# source://prism//lib/prism/lex_compat.rb#219 +# source://prism//lib/prism/lex_compat.rb#221 class Prism::LexCompat::IgnoreStateToken < ::Prism::LexCompat::Token - # source://prism//lib/prism/lex_compat.rb#220 + # source://prism//lib/prism/lex_compat.rb#222 def ==(other); end end # Ignored newlines can occasionally have a LABEL state attached to them, so # we compare the state differently here. # -# source://prism//lib/prism/lex_compat.rb#240 +# source://prism//lib/prism/lex_compat.rb#242 class Prism::LexCompat::IgnoredNewlineToken < ::Prism::LexCompat::Token - # source://prism//lib/prism/lex_compat.rb#241 + # source://prism//lib/prism/lex_compat.rb#243 def ==(other); end end @@ -17390,9 +19438,9 @@ end # more accurately, so we need to allow comparing against both END and # END|LABEL. # -# source://prism//lib/prism/lex_compat.rb#260 +# source://prism//lib/prism/lex_compat.rb#262 class Prism::LexCompat::ParamToken < ::Prism::LexCompat::Token - # source://prism//lib/prism/lex_compat.rb#261 + # source://prism//lib/prism/lex_compat.rb#263 def ==(other); end end @@ -17411,44 +19459,44 @@ Prism::LexCompat::RIPPER = T.let(T.unsafe(nil), Hash) class Prism::LexCompat::Token < ::SimpleDelegator # The type of the token. # - # source://prism//lib/prism/lex_compat.rb#194 + # source://prism//lib/prism/lex_compat.rb#196 def event; end # The location of the token in the source. # - # source://prism//lib/prism/lex_compat.rb#189 + # source://prism//lib/prism/lex_compat.rb#191 def location; end # The state of the lexer when this token was produced. # - # source://prism//lib/prism/lex_compat.rb#204 + # source://prism//lib/prism/lex_compat.rb#206 def state; end # The slice of the source that this token represents. # - # source://prism//lib/prism/lex_compat.rb#199 + # source://prism//lib/prism/lex_compat.rb#201 def value; end end # This is a class that wraps the Ripper lexer to produce almost exactly the # same tokens. # -# source://prism//lib/prism/lex_compat.rb#853 +# source://prism//lib/prism/lex_compat.rb#855 class Prism::LexRipper # @return [LexRipper] a new instance of LexRipper # - # source://prism//lib/prism/lex_compat.rb#856 + # source://prism//lib/prism/lex_compat.rb#858 def initialize(source); end - # source://prism//lib/prism/lex_compat.rb#860 + # source://prism//lib/prism/lex_compat.rb#862 def result; end - # source://prism//lib/prism/lex_compat.rb#854 + # source://prism//lib/prism/lex_compat.rb#856 def source; end private - # source://prism//lib/prism/lex_compat.rb#894 + # source://prism//lib/prism/lex_compat.rb#896 def lex(source); end end @@ -17457,95 +19505,117 @@ end # target &&= value # ^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#12029 +# source://prism//lib/prism/node.rb#11737 class Prism::LocalVariableAndWriteNode < ::Prism::Node - # def initialize: (Location name_loc, Location operator_loc, Node value, Symbol name, Integer depth, Location location) -> void + # def initialize: (Location name_loc, Location operator_loc, Prism::node value, Symbol name, Integer depth, Location location) -> void # # @return [LocalVariableAndWriteNode] a new instance of LocalVariableAndWriteNode # - # source://prism//lib/prism/node.rb#12031 + # source://prism//lib/prism/node.rb#11739 + sig do + params( + source: Prism::Source, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + name: Symbol, + depth: Integer, + location: Prism::Location + ).void + end def initialize(source, name_loc, operator_loc, value, name, depth, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#12043 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#11751 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12048 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11756 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#12058 + # source://prism//lib/prism/node.rb#11766 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#12053 + # source://prism//lib/prism/node.rb#11761 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> LocalVariableAndWriteNode + # def copy: (?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?name: Symbol, ?depth: Integer, ?location: Location) -> LocalVariableAndWriteNode # - # source://prism//lib/prism/node.rb#12063 - sig { params(params: T.untyped).returns(Prism::LocalVariableAndWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#11771 + sig do + params( + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + name: Symbol, + depth: Integer, + location: Prism::Location + ).returns(Prism::LocalVariableAndWriteNode) + end + def copy(name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12048 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11756 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name_loc: Location, operator_loc: Location, value: Node, name: Symbol, depth: Integer, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name_loc: Location, operator_loc: Location, value: Prism::node, name: Symbol, depth: Integer, location: Location } # - # source://prism//lib/prism/node.rb#12079 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#11779 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # attr_reader depth: Integer # - # source://prism//lib/prism/node.rb#12102 + # source://prism//lib/prism/node.rb#11804 sig { returns(Integer) } def depth; end - # source://prism//lib/prism/desugar_compiler.rb#197 + # source://prism//lib/prism/desugar_compiler.rb#199 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#12111 + # source://prism//lib/prism/node.rb#11813 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#12099 + # source://prism//lib/prism/node.rb#11801 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#12084 + # source://prism//lib/prism/node.rb#11784 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#12106 + # source://prism//lib/prism/node.rb#11808 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#12090 + # source://prism//lib/prism/node.rb#11791 sig { returns(Prism::Location) } def operator_loc; end @@ -17564,12 +19634,13 @@ class Prism::LocalVariableAndWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#12136 + # source://prism//lib/prism/node.rb#11838 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#12096 + # source://prism//lib/prism/node.rb#11798 sig { returns(Prism::Node) } def value; end @@ -17581,7 +19652,7 @@ class Prism::LocalVariableAndWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#12146 + # source://prism//lib/prism/node.rb#11848 def type; end end end @@ -17591,95 +19662,119 @@ end # target += value # ^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#12155 +# source://prism//lib/prism/node.rb#11857 class Prism::LocalVariableOperatorWriteNode < ::Prism::Node - # def initialize: (Location name_loc, Location operator_loc, Node value, Symbol name, Symbol operator, Integer depth, Location location) -> void + # def initialize: (Location name_loc, Location operator_loc, Prism::node value, Symbol name, Symbol operator, Integer depth, Location location) -> void # # @return [LocalVariableOperatorWriteNode] a new instance of LocalVariableOperatorWriteNode # - # source://prism//lib/prism/node.rb#12157 + # source://prism//lib/prism/node.rb#11859 + sig do + params( + source: Prism::Source, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + name: Symbol, + operator: Symbol, + depth: Integer, + location: Prism::Location + ).void + end def initialize(source, name_loc, operator_loc, value, name, operator, depth, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#12170 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#11872 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12175 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11877 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#12185 + # source://prism//lib/prism/node.rb#11887 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#12180 + # source://prism//lib/prism/node.rb#11882 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> LocalVariableOperatorWriteNode + # def copy: (?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?name: Symbol, ?operator: Symbol, ?depth: Integer, ?location: Location) -> LocalVariableOperatorWriteNode # - # source://prism//lib/prism/node.rb#12190 - sig { params(params: T.untyped).returns(Prism::LocalVariableOperatorWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#11892 + sig do + params( + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + name: Symbol, + operator: Symbol, + depth: Integer, + location: Prism::Location + ).returns(Prism::LocalVariableOperatorWriteNode) + end + def copy(name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), name: T.unsafe(nil), operator: T.unsafe(nil), depth: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12175 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11877 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name_loc: Location, operator_loc: Location, value: Node, name: Symbol, operator: Symbol, depth: Integer, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name_loc: Location, operator_loc: Location, value: Prism::node, name: Symbol, operator: Symbol, depth: Integer, location: Location } # - # source://prism//lib/prism/node.rb#12207 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#11900 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # attr_reader depth: Integer # - # source://prism//lib/prism/node.rb#12233 + # source://prism//lib/prism/node.rb#11928 sig { returns(Integer) } def depth; end - # source://prism//lib/prism/desugar_compiler.rb#209 + # source://prism//lib/prism/desugar_compiler.rb#211 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#12237 + # source://prism//lib/prism/node.rb#11932 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#12227 + # source://prism//lib/prism/node.rb#11922 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#12212 + # source://prism//lib/prism/node.rb#11905 sig { returns(Prism::Location) } def name_loc; end # attr_reader operator: Symbol # - # source://prism//lib/prism/node.rb#12230 + # source://prism//lib/prism/node.rb#11925 sig { returns(Symbol) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#12218 + # source://prism//lib/prism/node.rb#11912 sig { returns(Prism::Location) } def operator_loc; end @@ -17698,12 +19793,13 @@ class Prism::LocalVariableOperatorWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#12263 + # source://prism//lib/prism/node.rb#11958 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#12224 + # source://prism//lib/prism/node.rb#11919 sig { returns(Prism::Node) } def value; end @@ -17715,7 +19811,7 @@ class Prism::LocalVariableOperatorWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#12273 + # source://prism//lib/prism/node.rb#11968 def type; end end end @@ -17725,95 +19821,117 @@ end # target ||= value # ^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#12282 +# source://prism//lib/prism/node.rb#11977 class Prism::LocalVariableOrWriteNode < ::Prism::Node - # def initialize: (Location name_loc, Location operator_loc, Node value, Symbol name, Integer depth, Location location) -> void + # def initialize: (Location name_loc, Location operator_loc, Prism::node value, Symbol name, Integer depth, Location location) -> void # # @return [LocalVariableOrWriteNode] a new instance of LocalVariableOrWriteNode # - # source://prism//lib/prism/node.rb#12284 + # source://prism//lib/prism/node.rb#11979 + sig do + params( + source: Prism::Source, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + name: Symbol, + depth: Integer, + location: Prism::Location + ).void + end def initialize(source, name_loc, operator_loc, value, name, depth, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#12296 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#11991 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12301 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11996 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#12311 + # source://prism//lib/prism/node.rb#12006 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#12306 + # source://prism//lib/prism/node.rb#12001 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> LocalVariableOrWriteNode + # def copy: (?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?name: Symbol, ?depth: Integer, ?location: Location) -> LocalVariableOrWriteNode # - # source://prism//lib/prism/node.rb#12316 - sig { params(params: T.untyped).returns(Prism::LocalVariableOrWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#12011 + sig do + params( + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + name: Symbol, + depth: Integer, + location: Prism::Location + ).returns(Prism::LocalVariableOrWriteNode) + end + def copy(name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12301 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#11996 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name_loc: Location, operator_loc: Location, value: Node, name: Symbol, depth: Integer, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name_loc: Location, operator_loc: Location, value: Prism::node, name: Symbol, depth: Integer, location: Location } # - # source://prism//lib/prism/node.rb#12332 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#12019 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # attr_reader depth: Integer # - # source://prism//lib/prism/node.rb#12355 + # source://prism//lib/prism/node.rb#12044 sig { returns(Integer) } def depth; end - # source://prism//lib/prism/desugar_compiler.rb#203 + # source://prism//lib/prism/desugar_compiler.rb#205 def desugar; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#12364 + # source://prism//lib/prism/node.rb#12053 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#12352 + # source://prism//lib/prism/node.rb#12041 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#12337 + # source://prism//lib/prism/node.rb#12024 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#12359 + # source://prism//lib/prism/node.rb#12048 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#12343 + # source://prism//lib/prism/node.rb#12031 sig { returns(Prism::Location) } def operator_loc; end @@ -17832,12 +19950,13 @@ class Prism::LocalVariableOrWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#12389 + # source://prism//lib/prism/node.rb#12078 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#12349 + # source://prism//lib/prism/node.rb#12038 sig { returns(Prism::Node) } def value; end @@ -17849,7 +19968,7 @@ class Prism::LocalVariableOrWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#12399 + # source://prism//lib/prism/node.rb#12088 def type; end end end @@ -17859,58 +19978,57 @@ end # foo # ^^^ # -# source://prism//lib/prism/node.rb#12408 +# source://prism//lib/prism/node.rb#12097 class Prism::LocalVariableReadNode < ::Prism::Node # def initialize: (Symbol name, Integer depth, Location location) -> void # # @return [LocalVariableReadNode] a new instance of LocalVariableReadNode # - # source://prism//lib/prism/node.rb#12410 + # source://prism//lib/prism/node.rb#12099 + sig { params(source: Prism::Source, name: Symbol, depth: Integer, location: Prism::Location).void } def initialize(source, name, depth, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#12419 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#12108 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12424 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12113 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#12434 + # source://prism//lib/prism/node.rb#12123 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#12429 + # source://prism//lib/prism/node.rb#12118 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> LocalVariableReadNode + # def copy: (?name: Symbol, ?depth: Integer, ?location: Location) -> LocalVariableReadNode # - # source://prism//lib/prism/node.rb#12439 - sig { params(params: T.untyped).returns(Prism::LocalVariableReadNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#12128 + sig { params(name: Symbol, depth: Integer, location: Prism::Location).returns(Prism::LocalVariableReadNode) } + def copy(name: T.unsafe(nil), depth: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12424 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12113 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, depth: Integer, location: Location } # - # source://prism//lib/prism/node.rb#12452 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#12136 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # The number of visible scopes that should be searched to find the origin of this local variable. @@ -17921,13 +20039,17 @@ class Prism::LocalVariableReadNode < ::Prism::Node # # The specific rules for calculating the depth may differ from individual Ruby implementations, as they are not specified by the language. For more information, see [the Prism documentation](https://github.com/ruby/prism/blob/main/docs/local_variable_depth.md). # - # source://prism//lib/prism/node.rb#12478 + # source://prism//lib/prism/node.rb#12162 sig { returns(Integer) } def depth; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#12482 + # source://prism//lib/prism/node.rb#12166 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # The name of the local variable, which is an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers). @@ -17944,7 +20066,7 @@ class Prism::LocalVariableReadNode < ::Prism::Node # # it # name `:0it` # - # source://prism//lib/prism/node.rb#12469 + # source://prism//lib/prism/node.rb#12153 sig { returns(Symbol) } def name; end @@ -17963,7 +20085,8 @@ class Prism::LocalVariableReadNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#12503 + # source://prism//lib/prism/node.rb#12187 + sig { override.returns(Symbol) } def type; end class << self @@ -17974,7 +20097,7 @@ class Prism::LocalVariableReadNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#12513 + # source://prism//lib/prism/node.rb#12197 def type; end end end @@ -17984,74 +20107,77 @@ end # foo, bar = baz # ^^^ ^^^ # -# source://prism//lib/prism/node.rb#12522 +# source://prism//lib/prism/node.rb#12206 class Prism::LocalVariableTargetNode < ::Prism::Node # def initialize: (Symbol name, Integer depth, Location location) -> void # # @return [LocalVariableTargetNode] a new instance of LocalVariableTargetNode # - # source://prism//lib/prism/node.rb#12524 + # source://prism//lib/prism/node.rb#12208 + sig { params(source: Prism::Source, name: Symbol, depth: Integer, location: Prism::Location).void } def initialize(source, name, depth, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#12533 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#12217 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12538 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12222 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#12548 + # source://prism//lib/prism/node.rb#12232 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#12543 + # source://prism//lib/prism/node.rb#12227 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> LocalVariableTargetNode + # def copy: (?name: Symbol, ?depth: Integer, ?location: Location) -> LocalVariableTargetNode # - # source://prism//lib/prism/node.rb#12553 - sig { params(params: T.untyped).returns(Prism::LocalVariableTargetNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#12237 + sig { params(name: Symbol, depth: Integer, location: Prism::Location).returns(Prism::LocalVariableTargetNode) } + def copy(name: T.unsafe(nil), depth: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12538 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12222 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, depth: Integer, location: Location } # - # source://prism//lib/prism/node.rb#12566 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#12245 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # attr_reader depth: Integer # - # source://prism//lib/prism/node.rb#12574 + # source://prism//lib/prism/node.rb#12253 sig { returns(Integer) } def depth; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#12578 + # source://prism//lib/prism/node.rb#12257 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#12571 + # source://prism//lib/prism/node.rb#12250 sig { returns(Symbol) } def name; end @@ -18070,7 +20196,8 @@ class Prism::LocalVariableTargetNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#12599 + # source://prism//lib/prism/node.rb#12278 + sig { override.returns(Symbol) } def type; end class << self @@ -18081,7 +20208,7 @@ class Prism::LocalVariableTargetNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#12609 + # source://prism//lib/prism/node.rb#12288 def type; end end end @@ -18091,92 +20218,114 @@ end # foo = 1 # ^^^^^^^ # -# source://prism//lib/prism/node.rb#12618 +# source://prism//lib/prism/node.rb#12297 class Prism::LocalVariableWriteNode < ::Prism::Node - # def initialize: (Symbol name, Integer depth, Location name_loc, Node value, Location operator_loc, Location location) -> void + # def initialize: (Symbol name, Integer depth, Location name_loc, Prism::node value, Location operator_loc, Location location) -> void # # @return [LocalVariableWriteNode] a new instance of LocalVariableWriteNode # - # source://prism//lib/prism/node.rb#12620 + # source://prism//lib/prism/node.rb#12299 + sig do + params( + source: Prism::Source, + name: Symbol, + depth: Integer, + name_loc: Prism::Location, + value: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, name, depth, name_loc, value, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#12632 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#12311 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12637 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12316 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#12647 + # source://prism//lib/prism/node.rb#12326 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#12642 + # source://prism//lib/prism/node.rb#12321 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> LocalVariableWriteNode + # def copy: (?name: Symbol, ?depth: Integer, ?name_loc: Location, ?value: Prism::node, ?operator_loc: Location, ?location: Location) -> LocalVariableWriteNode # - # source://prism//lib/prism/node.rb#12652 - sig { params(params: T.untyped).returns(Prism::LocalVariableWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#12331 + sig do + params( + name: Symbol, + depth: Integer, + name_loc: Prism::Location, + value: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::LocalVariableWriteNode) + end + def copy(name: T.unsafe(nil), depth: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12637 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12316 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, depth: Integer, name_loc: Location, value: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, depth: Integer, name_loc: Location, value: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#12668 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#12339 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # attr_reader depth: Integer # - # source://prism//lib/prism/node.rb#12676 + # source://prism//lib/prism/node.rb#12347 sig { returns(Integer) } def depth; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#12700 + # source://prism//lib/prism/node.rb#12373 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#12673 + # source://prism//lib/prism/node.rb#12344 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#12679 + # source://prism//lib/prism/node.rb#12350 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#12695 + # source://prism//lib/prism/node.rb#12368 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#12688 + # source://prism//lib/prism/node.rb#12360 sig { returns(Prism::Location) } def operator_loc; end @@ -18195,12 +20344,13 @@ class Prism::LocalVariableWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#12725 + # source://prism//lib/prism/node.rb#12398 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#12685 + # source://prism//lib/prism/node.rb#12357 sig { returns(Prism::Node) } def value; end @@ -18212,231 +20362,273 @@ class Prism::LocalVariableWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#12735 + # source://prism//lib/prism/node.rb#12408 def type; end end end # This represents a location in the source. # -# source://prism//lib/prism/parse_result.rb#98 +# source://prism//lib/prism/parse_result.rb#104 class Prism::Location # Create a new location object with the given source, start byte offset, and # byte length. # # @return [Location] a new instance of Location # - # source://prism//lib/prism/parse_result.rb#116 + # source://prism//lib/prism/parse_result.rb#119 sig { params(source: Prism::Source, start_offset: Integer, length: Integer).void } def initialize(source, start_offset, length); end # Returns true if the given other location is equal to this location. # - # source://prism//lib/prism/parse_result.rb#232 + # source://prism//lib/prism/parse_result.rb#269 + sig { params(other: T.untyped).returns(T::Boolean) } def ==(other); end - # The list of comments attached to this location + # Returns a new location that is the result of chopping off the last byte. # - # source://prism//lib/prism/parse_result.rb#112 + # source://prism//lib/prism/parse_result.rb#165 + sig { returns(Prism::Location) } + def chop; end + + # Returns all comments that are associated with this location (both leading + # and trailing comments). + # + # source://prism//lib/prism/parse_result.rb#155 sig { returns(T::Array[Prism::Comment]) } def comments; end # Create a new location object with the given options. # - # source://prism//lib/prism/parse_result.rb#124 - sig { params(options: T.untyped).returns(Prism::Location) } - def copy(**options); end + # source://prism//lib/prism/parse_result.rb#160 + sig { params(source: Prism::Source, start_offset: Integer, length: Integer).returns(Prism::Location) } + def copy(source: T.unsafe(nil), start_offset: T.unsafe(nil), length: T.unsafe(nil)); end # Implement the hash pattern matching interface for Location. # - # source://prism//lib/prism/parse_result.rb#222 + # source://prism//lib/prism/parse_result.rb#259 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # The column number in characters where this location ends from the start of # the line. # - # source://prism//lib/prism/parse_result.rb#211 + # source://prism//lib/prism/parse_result.rb#248 + sig { returns(Integer) } def end_character_column; end # The character offset from the beginning of the source where this location # ends. # - # source://prism//lib/prism/parse_result.rb#160 + # source://prism//lib/prism/parse_result.rb#197 + sig { returns(Integer) } def end_character_offset; end # The column number in code units of the given encoding where this location # ends from the start of the line. # - # source://prism//lib/prism/parse_result.rb#217 + # source://prism//lib/prism/parse_result.rb#254 + sig { params(encoding: Encoding).returns(Integer) } def end_code_units_column(encoding = T.unsafe(nil)); end # The offset from the start of the file in code units of the given encoding. # - # source://prism//lib/prism/parse_result.rb#165 + # source://prism//lib/prism/parse_result.rb#202 + sig { params(encoding: Encoding).returns(Integer) } def end_code_units_offset(encoding = T.unsafe(nil)); end # The column number in bytes where this location ends from the start of the # line. # - # source://prism//lib/prism/parse_result.rb#205 + # source://prism//lib/prism/parse_result.rb#242 sig { returns(Integer) } def end_column; end # The line number where this location ends. # - # source://prism//lib/prism/parse_result.rb#181 + # source://prism//lib/prism/parse_result.rb#218 sig { returns(Integer) } def end_line; end # The byte offset from the beginning of the source where this location ends. # - # source://prism//lib/prism/parse_result.rb#154 + # source://prism//lib/prism/parse_result.rb#191 sig { returns(Integer) } def end_offset; end # Returns a string representation of this location. # - # source://prism//lib/prism/parse_result.rb#133 + # source://prism//lib/prism/parse_result.rb#170 + sig { returns(String) } def inspect; end # Returns a new location that stretches from this location to the given # other location. Raises an error if this location is not before the other # location or if they don't share the same source. # - # source://prism//lib/prism/parse_result.rb#241 + # source://prism//lib/prism/parse_result.rb#278 + sig { params(other: Prism::Location).returns(Prism::Location) } def join(other); end + # Attach a comment to the leading comments of this location. + # + # source://prism//lib/prism/parse_result.rb#138 + sig { params(comment: Prism::Comment).void } + def leading_comment(comment); end + + # These are the comments that are associated with this location that exist + # before the start of this location. + # + # source://prism//lib/prism/parse_result.rb#133 + sig { returns(T::Array[Prism::Comment]) } + def leading_comments; end + # The length of this location in bytes. # - # source://prism//lib/prism/parse_result.rb#109 + # source://prism//lib/prism/parse_result.rb#115 def length; end # Implement the pretty print interface for Location. # - # source://prism//lib/prism/parse_result.rb#227 + # source://prism//lib/prism/parse_result.rb#264 + sig { params(q: T.untyped).void } def pretty_print(q); end # The source code that this location represents. # - # source://prism//lib/prism/parse_result.rb#138 + # source://prism//lib/prism/parse_result.rb#175 sig { returns(String) } def slice; end # The column number in characters where this location ends from the start of # the line. # - # source://prism//lib/prism/parse_result.rb#193 + # source://prism//lib/prism/parse_result.rb#230 + sig { returns(Integer) } def start_character_column; end # The character offset from the beginning of the source where this location # starts. # - # source://prism//lib/prism/parse_result.rb#144 + # source://prism//lib/prism/parse_result.rb#181 + sig { returns(Integer) } def start_character_offset; end # The column number in code units of the given encoding where this location # starts from the start of the line. # - # source://prism//lib/prism/parse_result.rb#199 + # source://prism//lib/prism/parse_result.rb#236 + sig { params(encoding: Encoding).returns(Integer) } def start_code_units_column(encoding = T.unsafe(nil)); end # The offset from the start of the file in code units of the given encoding. # - # source://prism//lib/prism/parse_result.rb#149 + # source://prism//lib/prism/parse_result.rb#186 + sig { params(encoding: Encoding).returns(Integer) } def start_code_units_offset(encoding = T.unsafe(nil)); end # The column number in bytes where this location starts from the start of # the line. # - # source://prism//lib/prism/parse_result.rb#187 + # source://prism//lib/prism/parse_result.rb#224 sig { returns(Integer) } def start_column; end # The line number where this location starts. # - # source://prism//lib/prism/parse_result.rb#170 + # source://prism//lib/prism/parse_result.rb#207 sig { returns(Integer) } def start_line; end # The content of the line where this location starts before this location. # - # source://prism//lib/prism/parse_result.rb#175 + # source://prism//lib/prism/parse_result.rb#212 + sig { returns(String) } def start_line_slice; end # The byte offset from the beginning of the source where this location # starts. # - # source://prism//lib/prism/parse_result.rb#106 - sig { returns(Integer) } + # source://prism//lib/prism/parse_result.rb#112 def start_offset; end + # Attach a comment to the trailing comments of this location. + # + # source://prism//lib/prism/parse_result.rb#149 + sig { params(comment: Prism::Comment).void } + def trailing_comment(comment); end + + # These are the comments that are associated with this location that exist + # after the end of this location. + # + # source://prism//lib/prism/parse_result.rb#144 + sig { returns(T::Array[Prism::Comment]) } + def trailing_comments; end + protected # A Source object that is used to determine more information from the given # offset and length. # - # source://prism//lib/prism/parse_result.rb#101 + # source://prism//lib/prism/parse_result.rb#107 def source; end - - class << self - # Returns a null location that does not correspond to a source and points to - # the beginning of the file. Useful for when you want a location object but - # do not care where it points. - # - # source://prism//lib/prism/parse_result.rb#251 - def null; end - end end # Flags for while and until loop nodes. # -# source://prism//lib/prism/node.rb#19298 +# source://prism//lib/prism/node.rb#18896 module Prism::LoopFlags; end # a loop after a begin statement, so the body is executed first before the condition # -# source://prism//lib/prism/node.rb#19300 +# source://prism//lib/prism/node.rb#18898 Prism::LoopFlags::BEGIN_MODIFIER = T.let(T.unsafe(nil), Integer) # This represents a magic comment that was encountered during parsing. # -# source://prism//lib/prism/parse_result.rb#303 +# source://prism//lib/prism/parse_result.rb#338 class Prism::MagicComment # Create a new magic comment object with the given key and value locations. # # @return [MagicComment] a new instance of MagicComment # - # source://prism//lib/prism/parse_result.rb#311 + # source://prism//lib/prism/parse_result.rb#346 + sig { params(key_loc: Prism::Location, value_loc: Prism::Location).void } def initialize(key_loc, value_loc); end # Implement the hash pattern matching interface for MagicComment. # - # source://prism//lib/prism/parse_result.rb#327 + # source://prism//lib/prism/parse_result.rb#362 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # Returns a string representation of this magic comment. # - # source://prism//lib/prism/parse_result.rb#332 + # source://prism//lib/prism/parse_result.rb#367 + sig { returns(String) } def inspect; end # Returns the key of the magic comment by slicing it from the source code. # - # source://prism//lib/prism/parse_result.rb#317 + # source://prism//lib/prism/parse_result.rb#352 + sig { returns(String) } def key; end # A Location object representing the location of the key in the source. # - # source://prism//lib/prism/parse_result.rb#305 + # source://prism//lib/prism/parse_result.rb#340 def key_loc; end # Returns the value of the magic comment by slicing it from the source code. # - # source://prism//lib/prism/parse_result.rb#322 + # source://prism//lib/prism/parse_result.rb#357 + sig { returns(String) } def value; end # A Location object representing the location of the value in the source. # - # source://prism//lib/prism/parse_result.rb#308 + # source://prism//lib/prism/parse_result.rb#343 def value_loc; end end @@ -18445,7 +20637,7 @@ end # if /foo/i then end # ^^^^^^ # -# source://prism//lib/prism/node.rb#12744 +# source://prism//lib/prism/node.rb#12417 class Prism::MatchLastLineNode < ::Prism::Node include ::Prism::RegularExpressionOptions @@ -18453,91 +20645,109 @@ class Prism::MatchLastLineNode < ::Prism::Node # # @return [MatchLastLineNode] a new instance of MatchLastLineNode # - # source://prism//lib/prism/node.rb#12746 + # source://prism//lib/prism/node.rb#12419 + sig do + params( + source: Prism::Source, + flags: Integer, + opening_loc: Prism::Location, + content_loc: Prism::Location, + closing_loc: Prism::Location, + unescaped: String, + location: Prism::Location + ).void + end def initialize(source, flags, opening_loc, content_loc, closing_loc, unescaped, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#12758 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#12431 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def ascii_8bit?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12850 + # source://prism//lib/prism/node.rb#12518 sig { returns(T::Boolean) } def ascii_8bit?; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12763 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12436 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#12890 + # source://prism//lib/prism/node.rb#12558 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#12815 + # source://prism//lib/prism/node.rb#12482 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#12773 + # source://prism//lib/prism/node.rb#12446 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#12768 + # source://prism//lib/prism/node.rb#12441 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end # def content: () -> String # - # source://prism//lib/prism/node.rb#12885 + # source://prism//lib/prism/node.rb#12553 sig { returns(String) } def content; end # attr_reader content_loc: Location # - # source://prism//lib/prism/node.rb#12809 + # source://prism//lib/prism/node.rb#12475 sig { returns(Prism::Location) } def content_loc; end - # def copy: (**params) -> MatchLastLineNode + # def copy: (?flags: Integer, ?opening_loc: Location, ?content_loc: Location, ?closing_loc: Location, ?unescaped: String, ?location: Location) -> MatchLastLineNode # - # source://prism//lib/prism/node.rb#12778 - sig { params(params: T.untyped).returns(Prism::MatchLastLineNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#12451 + sig do + params( + flags: Integer, + opening_loc: Prism::Location, + content_loc: Prism::Location, + closing_loc: Prism::Location, + unescaped: String, + location: Prism::Location + ).returns(Prism::MatchLastLineNode) + end + def copy(flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12763 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12436 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, opening_loc: Location, content_loc: Location, closing_loc: Location, unescaped: String, location: Location } # - # source://prism//lib/prism/node.rb#12794 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#12459 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def euc_jp?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12845 + # source://prism//lib/prism/node.rb#12513 sig { returns(T::Boolean) } def euc_jp?; end @@ -18545,15 +20755,18 @@ class Prism::MatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12830 + # source://prism//lib/prism/node.rb#12498 sig { returns(T::Boolean) } def extended?; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def forced_binary_encoding?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12870 + # source://prism//lib/prism/node.rb#12538 sig { returns(T::Boolean) } def forced_binary_encoding?; end @@ -18561,7 +20774,7 @@ class Prism::MatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12875 + # source://prism//lib/prism/node.rb#12543 sig { returns(T::Boolean) } def forced_us_ascii_encoding?; end @@ -18569,7 +20782,7 @@ class Prism::MatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12865 + # source://prism//lib/prism/node.rb#12533 sig { returns(T::Boolean) } def forced_utf8_encoding?; end @@ -18577,20 +20790,21 @@ class Prism::MatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12825 + # source://prism//lib/prism/node.rb#12493 sig { returns(T::Boolean) } def ignore_case?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#12895 + # source://prism//lib/prism/node.rb#12563 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def multi_line?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12835 + # source://prism//lib/prism/node.rb#12503 sig { returns(T::Boolean) } def multi_line?; end @@ -18598,22 +20812,25 @@ class Prism::MatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12840 + # source://prism//lib/prism/node.rb#12508 sig { returns(T::Boolean) } def once?; end # def opening: () -> String # - # source://prism//lib/prism/node.rb#12880 + # source://prism//lib/prism/node.rb#12548 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#12803 + # source://prism//lib/prism/node.rb#12468 sig { returns(Prism::Location) } def opening_loc; end + sig { returns(Integer) } + def options; end + # Sometimes you want to check an instance of a node against a list of # classes to see what kind of behavior to perform. Usually this is done by # calling `[cls1, cls2].include?(node.class)` or putting the node into a @@ -18629,12 +20846,13 @@ class Prism::MatchLastLineNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#12920 + # source://prism//lib/prism/node.rb#12588 + sig { override.returns(Symbol) } def type; end # attr_reader unescaped: String # - # source://prism//lib/prism/node.rb#12821 + # source://prism//lib/prism/node.rb#12489 sig { returns(String) } def unescaped; end @@ -18642,7 +20860,7 @@ class Prism::MatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12860 + # source://prism//lib/prism/node.rb#12528 sig { returns(T::Boolean) } def utf_8?; end @@ -18650,7 +20868,7 @@ class Prism::MatchLastLineNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#12855 + # source://prism//lib/prism/node.rb#12523 sig { returns(T::Boolean) } def windows_31j?; end @@ -18658,7 +20876,7 @@ class Prism::MatchLastLineNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#12799 + # source://prism//lib/prism/node.rb#12464 sig { returns(Integer) } def flags; end @@ -18670,7 +20888,7 @@ class Prism::MatchLastLineNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#12930 + # source://prism//lib/prism/node.rb#12598 def type; end end end @@ -18680,80 +20898,98 @@ end # foo in bar # ^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#12939 +# source://prism//lib/prism/node.rb#12607 class Prism::MatchPredicateNode < ::Prism::Node - # def initialize: (Node value, Node pattern, Location operator_loc, Location location) -> void + # def initialize: (Prism::node value, Prism::node pattern, Location operator_loc, Location location) -> void # # @return [MatchPredicateNode] a new instance of MatchPredicateNode # - # source://prism//lib/prism/node.rb#12941 + # source://prism//lib/prism/node.rb#12609 + sig do + params( + source: Prism::Source, + value: Prism::Node, + pattern: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, value, pattern, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#12951 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#12619 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12956 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12624 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#12966 + # source://prism//lib/prism/node.rb#12634 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#12961 + # source://prism//lib/prism/node.rb#12629 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> MatchPredicateNode + # def copy: (?value: Prism::node, ?pattern: Prism::node, ?operator_loc: Location, ?location: Location) -> MatchPredicateNode # - # source://prism//lib/prism/node.rb#12971 - sig { params(params: T.untyped).returns(Prism::MatchPredicateNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#12639 + sig do + params( + value: Prism::Node, + pattern: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::MatchPredicateNode) + end + def copy(value: T.unsafe(nil), pattern: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#12956 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12624 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { value: Node, pattern: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { value: Prism::node, pattern: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#12985 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#12647 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#13008 + # source://prism//lib/prism/node.rb#12671 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#13003 + # source://prism//lib/prism/node.rb#12666 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#12996 + # source://prism//lib/prism/node.rb#12658 sig { returns(Prism::Location) } def operator_loc; end - # attr_reader pattern: Node + # attr_reader pattern: Prism::node # - # source://prism//lib/prism/node.rb#12993 + # source://prism//lib/prism/node.rb#12655 sig { returns(Prism::Node) } def pattern; end @@ -18772,12 +21008,13 @@ class Prism::MatchPredicateNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#13032 + # source://prism//lib/prism/node.rb#12695 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#12990 + # source://prism//lib/prism/node.rb#12652 sig { returns(Prism::Node) } def value; end @@ -18789,7 +21026,7 @@ class Prism::MatchPredicateNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#13042 + # source://prism//lib/prism/node.rb#12705 def type; end end end @@ -18799,80 +21036,98 @@ end # foo => bar # ^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#13051 +# source://prism//lib/prism/node.rb#12714 class Prism::MatchRequiredNode < ::Prism::Node - # def initialize: (Node value, Node pattern, Location operator_loc, Location location) -> void + # def initialize: (Prism::node value, Prism::node pattern, Location operator_loc, Location location) -> void # # @return [MatchRequiredNode] a new instance of MatchRequiredNode # - # source://prism//lib/prism/node.rb#13053 + # source://prism//lib/prism/node.rb#12716 + sig do + params( + source: Prism::Source, + value: Prism::Node, + pattern: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, value, pattern, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#13063 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#12726 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13068 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12731 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#13078 + # source://prism//lib/prism/node.rb#12741 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#13073 + # source://prism//lib/prism/node.rb#12736 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> MatchRequiredNode + # def copy: (?value: Prism::node, ?pattern: Prism::node, ?operator_loc: Location, ?location: Location) -> MatchRequiredNode # - # source://prism//lib/prism/node.rb#13083 - sig { params(params: T.untyped).returns(Prism::MatchRequiredNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#12746 + sig do + params( + value: Prism::Node, + pattern: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::MatchRequiredNode) + end + def copy(value: T.unsafe(nil), pattern: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13068 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12731 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { value: Node, pattern: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { value: Prism::node, pattern: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#13097 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#12754 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#13120 + # source://prism//lib/prism/node.rb#12778 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#13115 + # source://prism//lib/prism/node.rb#12773 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#13108 + # source://prism//lib/prism/node.rb#12765 sig { returns(Prism::Location) } def operator_loc; end - # attr_reader pattern: Node + # attr_reader pattern: Prism::node # - # source://prism//lib/prism/node.rb#13105 + # source://prism//lib/prism/node.rb#12762 sig { returns(Prism::Node) } def pattern; end @@ -18891,12 +21146,13 @@ class Prism::MatchRequiredNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#13144 + # source://prism//lib/prism/node.rb#12802 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#13102 + # source://prism//lib/prism/node.rb#12759 sig { returns(Prism::Node) } def value; end @@ -18908,7 +21164,7 @@ class Prism::MatchRequiredNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#13154 + # source://prism//lib/prism/node.rb#12812 def type; end end end @@ -18918,75 +21174,91 @@ end # /(?bar)/ =~ baz # ^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#13163 +# source://prism//lib/prism/node.rb#12821 class Prism::MatchWriteNode < ::Prism::Node - # def initialize: (CallNode call, Array[Node] targets, Location location) -> void + # def initialize: (CallNode call, Array[LocalVariableTargetNode] targets, Location location) -> void # # @return [MatchWriteNode] a new instance of MatchWriteNode # - # source://prism//lib/prism/node.rb#13165 + # source://prism//lib/prism/node.rb#12823 + sig do + params( + source: Prism::Source, + call: Prism::CallNode, + targets: T::Array[Prism::LocalVariableTargetNode], + location: Prism::Location + ).void + end def initialize(source, call, targets, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#13174 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#12832 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader call: CallNode # - # source://prism//lib/prism/node.rb#13212 + # source://prism//lib/prism/node.rb#12865 sig { returns(Prism::CallNode) } def call; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13179 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12837 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#13189 + # source://prism//lib/prism/node.rb#12847 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#13184 + # source://prism//lib/prism/node.rb#12842 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> MatchWriteNode + # def copy: (?call: CallNode, ?targets: Array[LocalVariableTargetNode], ?location: Location) -> MatchWriteNode # - # source://prism//lib/prism/node.rb#13194 - sig { params(params: T.untyped).returns(Prism::MatchWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#12852 + sig do + params( + call: Prism::CallNode, + targets: T::Array[Prism::LocalVariableTargetNode], + location: Prism::Location + ).returns(Prism::MatchWriteNode) + end + def copy(call: T.unsafe(nil), targets: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13179 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12837 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { call: CallNode, targets: Array[Node], location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { call: CallNode, targets: Array[LocalVariableTargetNode], location: Location } # - # source://prism//lib/prism/node.rb#13207 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#12860 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#13219 + # source://prism//lib/prism/node.rb#12872 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader targets: Array[Node] + # attr_reader targets: Array[LocalVariableTargetNode] # - # source://prism//lib/prism/node.rb#13215 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#12868 + sig { returns(T::Array[Prism::LocalVariableTargetNode]) } def targets; end # Sometimes you want to check an instance of a node against a list of @@ -19004,7 +21276,8 @@ class Prism::MatchWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#13241 + # source://prism//lib/prism/node.rb#12894 + sig { override.returns(Symbol) } def type; end class << self @@ -19015,70 +21288,73 @@ class Prism::MatchWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#13251 + # source://prism//lib/prism/node.rb#12904 def type; end end end # Represents a node that is missing from the source and results in a syntax error. # -# source://prism//lib/prism/node.rb#13257 +# source://prism//lib/prism/node.rb#12910 class Prism::MissingNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [MissingNode] a new instance of MissingNode # - # source://prism//lib/prism/node.rb#13259 + # source://prism//lib/prism/node.rb#12912 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#13266 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#12919 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13271 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12924 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#13281 + # source://prism//lib/prism/node.rb#12934 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#13276 + # source://prism//lib/prism/node.rb#12929 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> MissingNode + # def copy: (?location: Location) -> MissingNode # - # source://prism//lib/prism/node.rb#13286 - sig { params(params: T.untyped).returns(Prism::MissingNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#12939 + sig { params(location: Prism::Location).returns(Prism::MissingNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13271 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#12924 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#13297 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#12947 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#13303 + # source://prism//lib/prism/node.rb#12953 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -19096,7 +21372,8 @@ class Prism::MissingNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#13322 + # source://prism//lib/prism/node.rb#12972 + sig { override.returns(Symbol) } def type; end class << self @@ -19107,7 +21384,7 @@ class Prism::MissingNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#13332 + # source://prism//lib/prism/node.rb#12982 def type; end end end @@ -19117,110 +21394,134 @@ end # module Foo end # ^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#13341 +# source://prism//lib/prism/node.rb#12991 class Prism::ModuleNode < ::Prism::Node - # def initialize: (Array[Symbol] locals, Location module_keyword_loc, Node constant_path, Node? body, Location end_keyword_loc, Symbol name, Location location) -> void + # def initialize: (Array[Symbol] locals, Location module_keyword_loc, Prism::node constant_path, Prism::node? body, Location end_keyword_loc, Symbol name, Location location) -> void # # @return [ModuleNode] a new instance of ModuleNode # - # source://prism//lib/prism/node.rb#13343 + # source://prism//lib/prism/node.rb#12993 + sig do + params( + source: Prism::Source, + locals: T::Array[Symbol], + module_keyword_loc: Prism::Location, + constant_path: Prism::Node, + body: T.nilable(Prism::Node), + end_keyword_loc: Prism::Location, + name: Symbol, + location: Prism::Location + ).void + end def initialize(source, locals, module_keyword_loc, constant_path, body, end_keyword_loc, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#13356 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#13006 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader body: Node? + # attr_reader body: Prism::node? # - # source://prism//lib/prism/node.rb#13413 + # source://prism//lib/prism/node.rb#13055 sig { returns(T.nilable(Prism::Node)) } def body; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13361 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13011 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#13374 + # source://prism//lib/prism/node.rb#13024 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#13366 + # source://prism//lib/prism/node.rb#13016 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # attr_reader constant_path: Node + # attr_reader constant_path: Prism::node # - # source://prism//lib/prism/node.rb#13410 + # source://prism//lib/prism/node.rb#13052 sig { returns(Prism::Node) } def constant_path; end - # def copy: (**params) -> ModuleNode + # def copy: (?locals: Array[Symbol], ?module_keyword_loc: Location, ?constant_path: Prism::node, ?body: Prism::node?, ?end_keyword_loc: Location, ?name: Symbol, ?location: Location) -> ModuleNode # - # source://prism//lib/prism/node.rb#13379 - sig { params(params: T.untyped).returns(Prism::ModuleNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#13029 + sig do + params( + locals: T::Array[Symbol], + module_keyword_loc: Prism::Location, + constant_path: Prism::Node, + body: T.nilable(Prism::Node), + end_keyword_loc: Prism::Location, + name: Symbol, + location: Prism::Location + ).returns(Prism::ModuleNode) + end + def copy(locals: T.unsafe(nil), module_keyword_loc: T.unsafe(nil), constant_path: T.unsafe(nil), body: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13361 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13011 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], module_keyword_loc: Location, constant_path: Node, body: Node?, end_keyword_loc: Location, name: Symbol, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], module_keyword_loc: Location, constant_path: Prism::node, body: Prism::node?, end_keyword_loc: Location, name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#13396 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#13037 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def end_keyword: () -> String # - # source://prism//lib/prism/node.rb#13431 + # source://prism//lib/prism/node.rb#13074 sig { returns(String) } def end_keyword; end # attr_reader end_keyword_loc: Location # - # source://prism//lib/prism/node.rb#13416 + # source://prism//lib/prism/node.rb#13058 sig { returns(Prism::Location) } def end_keyword_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#13436 + # source://prism//lib/prism/node.rb#13079 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader locals: Array[Symbol] # - # source://prism//lib/prism/node.rb#13401 + # source://prism//lib/prism/node.rb#13042 sig { returns(T::Array[Symbol]) } def locals; end # def module_keyword: () -> String # - # source://prism//lib/prism/node.rb#13426 + # source://prism//lib/prism/node.rb#13069 sig { returns(String) } def module_keyword; end # attr_reader module_keyword_loc: Location # - # source://prism//lib/prism/node.rb#13404 + # source://prism//lib/prism/node.rb#13045 sig { returns(Prism::Location) } def module_keyword_loc; end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#13422 + # source://prism//lib/prism/node.rb#13065 sig { returns(Symbol) } def name; end @@ -19239,7 +21540,8 @@ class Prism::ModuleNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#13467 + # source://prism//lib/prism/node.rb#13110 + sig { override.returns(Symbol) } def type; end class << self @@ -19250,7 +21552,7 @@ class Prism::ModuleNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#13477 + # source://prism//lib/prism/node.rb#13120 def type; end end end @@ -19260,104 +21562,130 @@ end # a, (b, c) = 1, 2, 3 # ^^^^^^ # -# source://prism//lib/prism/node.rb#13486 +# source://prism//lib/prism/node.rb#13129 class Prism::MultiTargetNode < ::Prism::Node - # def initialize: (Array[Node] lefts, Node? rest, Array[Node] rights, Location? lparen_loc, Location? rparen_loc, Location location) -> void + # def initialize: (Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode] lefts, Prism::node? rest, Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode] rights, Location? lparen_loc, Location? rparen_loc, Location location) -> void # # @return [MultiTargetNode] a new instance of MultiTargetNode # - # source://prism//lib/prism/node.rb#13488 + # source://prism//lib/prism/node.rb#13131 + sig do + params( + source: Prism::Source, + lefts: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode, Prism::RequiredParameterNode, Prism::BackReferenceReadNode, Prism::NumberedReferenceReadNode)], + rest: T.nilable(Prism::Node), + rights: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode, Prism::RequiredParameterNode, Prism::BackReferenceReadNode)], + lparen_loc: T.nilable(Prism::Location), + rparen_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, lefts, rest, rights, lparen_loc, rparen_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#13500 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#13143 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13505 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13148 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#13519 + # source://prism//lib/prism/node.rb#13162 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#13510 + # source://prism//lib/prism/node.rb#13153 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> MultiTargetNode + # def copy: (?lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode], ?rest: Prism::node?, ?rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode], ?lparen_loc: Location?, ?rparen_loc: Location?, ?location: Location) -> MultiTargetNode # - # source://prism//lib/prism/node.rb#13524 - sig { params(params: T.untyped).returns(Prism::MultiTargetNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#13167 + sig do + params( + lefts: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode, Prism::RequiredParameterNode, Prism::BackReferenceReadNode, Prism::NumberedReferenceReadNode)], + rest: T.nilable(Prism::Node), + rights: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode, Prism::RequiredParameterNode, Prism::BackReferenceReadNode)], + lparen_loc: T.nilable(Prism::Location), + rparen_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::MultiTargetNode) + end + def copy(lefts: T.unsafe(nil), rest: T.unsafe(nil), rights: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13505 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13148 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { lefts: Array[Node], rest: Node?, rights: Array[Node], lparen_loc: Location?, rparen_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode], rest: Prism::node?, rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode], lparen_loc: Location?, rparen_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#13540 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#13175 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#13589 + # source://prism//lib/prism/node.rb#13226 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader lefts: Array[Node] + # attr_reader lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode] # - # source://prism//lib/prism/node.rb#13545 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#13180 + sig do + returns(T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode, Prism::RequiredParameterNode, Prism::BackReferenceReadNode, Prism::NumberedReferenceReadNode)]) + end def lefts; end # def lparen: () -> String? # - # source://prism//lib/prism/node.rb#13579 + # source://prism//lib/prism/node.rb#13216 sig { returns(T.nilable(String)) } def lparen; end # attr_reader lparen_loc: Location? # - # source://prism//lib/prism/node.rb#13554 + # source://prism//lib/prism/node.rb#13189 sig { returns(T.nilable(Prism::Location)) } def lparen_loc; end - # attr_reader rest: Node? + # attr_reader rest: Prism::node? # - # source://prism//lib/prism/node.rb#13548 + # source://prism//lib/prism/node.rb#13183 sig { returns(T.nilable(Prism::Node)) } def rest; end - # attr_reader rights: Array[Node] + # attr_reader rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode] # - # source://prism//lib/prism/node.rb#13551 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#13186 + sig do + returns(T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode, Prism::RequiredParameterNode, Prism::BackReferenceReadNode)]) + end def rights; end # def rparen: () -> String? # - # source://prism//lib/prism/node.rb#13584 + # source://prism//lib/prism/node.rb#13221 sig { returns(T.nilable(String)) } def rparen; end # attr_reader rparen_loc: Location? # - # source://prism//lib/prism/node.rb#13566 + # source://prism//lib/prism/node.rb#13202 sig { returns(T.nilable(Prism::Location)) } def rparen_loc; end @@ -19376,7 +21704,8 @@ class Prism::MultiTargetNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#13618 + # source://prism//lib/prism/node.rb#13255 + sig { override.returns(Symbol) } def type; end class << self @@ -19387,7 +21716,7 @@ class Prism::MultiTargetNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#13628 + # source://prism//lib/prism/node.rb#13265 def type; end end end @@ -19397,116 +21726,146 @@ end # a, b, c = 1, 2, 3 # ^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#13637 +# source://prism//lib/prism/node.rb#13274 class Prism::MultiWriteNode < ::Prism::Node - # def initialize: (Array[Node] lefts, Node? rest, Array[Node] rights, Location? lparen_loc, Location? rparen_loc, Location operator_loc, Node value, Location location) -> void + # def initialize: (Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode] lefts, Prism::node? rest, Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode] rights, Location? lparen_loc, Location? rparen_loc, Location operator_loc, Prism::node value, Location location) -> void # # @return [MultiWriteNode] a new instance of MultiWriteNode # - # source://prism//lib/prism/node.rb#13639 + # source://prism//lib/prism/node.rb#13276 + sig do + params( + source: Prism::Source, + lefts: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode)], + rest: T.nilable(Prism::Node), + rights: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode)], + lparen_loc: T.nilable(Prism::Location), + rparen_loc: T.nilable(Prism::Location), + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, lefts, rest, rights, lparen_loc, rparen_loc, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#13653 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#13290 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13658 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13295 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#13673 + # source://prism//lib/prism/node.rb#13310 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#13663 + # source://prism//lib/prism/node.rb#13300 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> MultiWriteNode + # def copy: (?lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], ?rest: Prism::node?, ?rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], ?lparen_loc: Location?, ?rparen_loc: Location?, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> MultiWriteNode # - # source://prism//lib/prism/node.rb#13678 - sig { params(params: T.untyped).returns(Prism::MultiWriteNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#13315 + sig do + params( + lefts: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode)], + rest: T.nilable(Prism::Node), + rights: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode)], + lparen_loc: T.nilable(Prism::Location), + rparen_loc: T.nilable(Prism::Location), + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::MultiWriteNode) + end + def copy(lefts: T.unsafe(nil), rest: T.unsafe(nil), rights: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13658 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13295 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { lefts: Array[Node], rest: Node?, rights: Array[Node], lparen_loc: Location?, rparen_loc: Location?, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], rest: Prism::node?, rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], lparen_loc: Location?, rparen_loc: Location?, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#13696 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#13323 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#13759 + # source://prism//lib/prism/node.rb#13389 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader lefts: Array[Node] + # attr_reader lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode] # - # source://prism//lib/prism/node.rb#13701 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#13328 + sig do + returns(T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode)]) + end def lefts; end # def lparen: () -> String? # - # source://prism//lib/prism/node.rb#13744 + # source://prism//lib/prism/node.rb#13374 sig { returns(T.nilable(String)) } def lparen; end # attr_reader lparen_loc: Location? # - # source://prism//lib/prism/node.rb#13710 + # source://prism//lib/prism/node.rb#13337 sig { returns(T.nilable(Prism::Location)) } def lparen_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#13754 + # source://prism//lib/prism/node.rb#13384 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#13734 + # source://prism//lib/prism/node.rb#13363 sig { returns(Prism::Location) } def operator_loc; end - # attr_reader rest: Node? + # attr_reader rest: Prism::node? # - # source://prism//lib/prism/node.rb#13704 + # source://prism//lib/prism/node.rb#13331 sig { returns(T.nilable(Prism::Node)) } def rest; end - # attr_reader rights: Array[Node] + # attr_reader rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode] # - # source://prism//lib/prism/node.rb#13707 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#13334 + sig do + returns(T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode)]) + end def rights; end # def rparen: () -> String? # - # source://prism//lib/prism/node.rb#13749 + # source://prism//lib/prism/node.rb#13379 sig { returns(T.nilable(String)) } def rparen; end # attr_reader rparen_loc: Location? # - # source://prism//lib/prism/node.rb#13722 + # source://prism//lib/prism/node.rb#13350 sig { returns(T.nilable(Prism::Location)) } def rparen_loc; end @@ -19525,12 +21884,13 @@ class Prism::MultiWriteNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#13791 + # source://prism//lib/prism/node.rb#13421 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#13740 + # source://prism//lib/prism/node.rb#13370 sig { returns(Prism::Node) } def value; end @@ -19542,7 +21902,7 @@ class Prism::MultiWriteNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#13801 + # source://prism//lib/prism/node.rb#13431 def type; end end end @@ -19551,747 +21911,759 @@ end # visited. This is useful for consumers that want to mutate the tree, as you # can change subtrees in place without effecting the rest of the tree. # -# source://prism//lib/prism/mutation_compiler.rb#12 +# source://prism//lib/prism/mutation_compiler.rb#13 class Prism::MutationCompiler < ::Prism::Compiler # Copy a AliasGlobalVariableNode node # - # source://prism//lib/prism/mutation_compiler.rb#14 + # source://prism//lib/prism/mutation_compiler.rb#15 def visit_alias_global_variable_node(node); end # Copy a AliasMethodNode node # - # source://prism//lib/prism/mutation_compiler.rb#19 + # source://prism//lib/prism/mutation_compiler.rb#20 def visit_alias_method_node(node); end # Copy a AlternationPatternNode node # - # source://prism//lib/prism/mutation_compiler.rb#24 + # source://prism//lib/prism/mutation_compiler.rb#25 def visit_alternation_pattern_node(node); end # Copy a AndNode node # - # source://prism//lib/prism/mutation_compiler.rb#29 + # source://prism//lib/prism/mutation_compiler.rb#30 def visit_and_node(node); end # Copy a ArgumentsNode node # - # source://prism//lib/prism/mutation_compiler.rb#34 + # source://prism//lib/prism/mutation_compiler.rb#35 def visit_arguments_node(node); end # Copy a ArrayNode node # - # source://prism//lib/prism/mutation_compiler.rb#39 + # source://prism//lib/prism/mutation_compiler.rb#40 def visit_array_node(node); end # Copy a ArrayPatternNode node # - # source://prism//lib/prism/mutation_compiler.rb#44 + # source://prism//lib/prism/mutation_compiler.rb#45 def visit_array_pattern_node(node); end # Copy a AssocNode node # - # source://prism//lib/prism/mutation_compiler.rb#49 + # source://prism//lib/prism/mutation_compiler.rb#50 def visit_assoc_node(node); end # Copy a AssocSplatNode node # - # source://prism//lib/prism/mutation_compiler.rb#54 + # source://prism//lib/prism/mutation_compiler.rb#55 def visit_assoc_splat_node(node); end # Copy a BackReferenceReadNode node # - # source://prism//lib/prism/mutation_compiler.rb#59 + # source://prism//lib/prism/mutation_compiler.rb#60 def visit_back_reference_read_node(node); end # Copy a BeginNode node # - # source://prism//lib/prism/mutation_compiler.rb#64 + # source://prism//lib/prism/mutation_compiler.rb#65 def visit_begin_node(node); end # Copy a BlockArgumentNode node # - # source://prism//lib/prism/mutation_compiler.rb#69 + # source://prism//lib/prism/mutation_compiler.rb#70 def visit_block_argument_node(node); end # Copy a BlockLocalVariableNode node # - # source://prism//lib/prism/mutation_compiler.rb#74 + # source://prism//lib/prism/mutation_compiler.rb#75 def visit_block_local_variable_node(node); end # Copy a BlockNode node # - # source://prism//lib/prism/mutation_compiler.rb#79 + # source://prism//lib/prism/mutation_compiler.rb#80 def visit_block_node(node); end # Copy a BlockParameterNode node # - # source://prism//lib/prism/mutation_compiler.rb#84 + # source://prism//lib/prism/mutation_compiler.rb#85 def visit_block_parameter_node(node); end # Copy a BlockParametersNode node # - # source://prism//lib/prism/mutation_compiler.rb#89 + # source://prism//lib/prism/mutation_compiler.rb#90 def visit_block_parameters_node(node); end # Copy a BreakNode node # - # source://prism//lib/prism/mutation_compiler.rb#94 + # source://prism//lib/prism/mutation_compiler.rb#95 def visit_break_node(node); end # Copy a CallAndWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#99 + # source://prism//lib/prism/mutation_compiler.rb#100 def visit_call_and_write_node(node); end # Copy a CallNode node # - # source://prism//lib/prism/mutation_compiler.rb#104 + # source://prism//lib/prism/mutation_compiler.rb#105 def visit_call_node(node); end # Copy a CallOperatorWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#109 + # source://prism//lib/prism/mutation_compiler.rb#110 def visit_call_operator_write_node(node); end # Copy a CallOrWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#114 + # source://prism//lib/prism/mutation_compiler.rb#115 def visit_call_or_write_node(node); end # Copy a CallTargetNode node # - # source://prism//lib/prism/mutation_compiler.rb#119 + # source://prism//lib/prism/mutation_compiler.rb#120 def visit_call_target_node(node); end # Copy a CapturePatternNode node # - # source://prism//lib/prism/mutation_compiler.rb#124 + # source://prism//lib/prism/mutation_compiler.rb#125 def visit_capture_pattern_node(node); end # Copy a CaseMatchNode node # - # source://prism//lib/prism/mutation_compiler.rb#129 + # source://prism//lib/prism/mutation_compiler.rb#130 def visit_case_match_node(node); end # Copy a CaseNode node # - # source://prism//lib/prism/mutation_compiler.rb#134 + # source://prism//lib/prism/mutation_compiler.rb#135 def visit_case_node(node); end # Copy a ClassNode node # - # source://prism//lib/prism/mutation_compiler.rb#139 + # source://prism//lib/prism/mutation_compiler.rb#140 def visit_class_node(node); end # Copy a ClassVariableAndWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#144 + # source://prism//lib/prism/mutation_compiler.rb#145 def visit_class_variable_and_write_node(node); end # Copy a ClassVariableOperatorWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#149 + # source://prism//lib/prism/mutation_compiler.rb#150 def visit_class_variable_operator_write_node(node); end # Copy a ClassVariableOrWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#154 + # source://prism//lib/prism/mutation_compiler.rb#155 def visit_class_variable_or_write_node(node); end # Copy a ClassVariableReadNode node # - # source://prism//lib/prism/mutation_compiler.rb#159 + # source://prism//lib/prism/mutation_compiler.rb#160 def visit_class_variable_read_node(node); end # Copy a ClassVariableTargetNode node # - # source://prism//lib/prism/mutation_compiler.rb#164 + # source://prism//lib/prism/mutation_compiler.rb#165 def visit_class_variable_target_node(node); end # Copy a ClassVariableWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#169 + # source://prism//lib/prism/mutation_compiler.rb#170 def visit_class_variable_write_node(node); end # Copy a ConstantAndWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#174 + # source://prism//lib/prism/mutation_compiler.rb#175 def visit_constant_and_write_node(node); end # Copy a ConstantOperatorWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#179 + # source://prism//lib/prism/mutation_compiler.rb#180 def visit_constant_operator_write_node(node); end # Copy a ConstantOrWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#184 + # source://prism//lib/prism/mutation_compiler.rb#185 def visit_constant_or_write_node(node); end # Copy a ConstantPathAndWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#189 + # source://prism//lib/prism/mutation_compiler.rb#190 def visit_constant_path_and_write_node(node); end # Copy a ConstantPathNode node # - # source://prism//lib/prism/mutation_compiler.rb#194 + # source://prism//lib/prism/mutation_compiler.rb#195 def visit_constant_path_node(node); end # Copy a ConstantPathOperatorWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#199 + # source://prism//lib/prism/mutation_compiler.rb#200 def visit_constant_path_operator_write_node(node); end # Copy a ConstantPathOrWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#204 + # source://prism//lib/prism/mutation_compiler.rb#205 def visit_constant_path_or_write_node(node); end # Copy a ConstantPathTargetNode node # - # source://prism//lib/prism/mutation_compiler.rb#209 + # source://prism//lib/prism/mutation_compiler.rb#210 def visit_constant_path_target_node(node); end # Copy a ConstantPathWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#214 + # source://prism//lib/prism/mutation_compiler.rb#215 def visit_constant_path_write_node(node); end # Copy a ConstantReadNode node # - # source://prism//lib/prism/mutation_compiler.rb#219 + # source://prism//lib/prism/mutation_compiler.rb#220 def visit_constant_read_node(node); end # Copy a ConstantTargetNode node # - # source://prism//lib/prism/mutation_compiler.rb#224 + # source://prism//lib/prism/mutation_compiler.rb#225 def visit_constant_target_node(node); end # Copy a ConstantWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#229 + # source://prism//lib/prism/mutation_compiler.rb#230 def visit_constant_write_node(node); end # Copy a DefNode node # - # source://prism//lib/prism/mutation_compiler.rb#234 + # source://prism//lib/prism/mutation_compiler.rb#235 def visit_def_node(node); end # Copy a DefinedNode node # - # source://prism//lib/prism/mutation_compiler.rb#239 + # source://prism//lib/prism/mutation_compiler.rb#240 def visit_defined_node(node); end # Copy a ElseNode node # - # source://prism//lib/prism/mutation_compiler.rb#244 + # source://prism//lib/prism/mutation_compiler.rb#245 def visit_else_node(node); end # Copy a EmbeddedStatementsNode node # - # source://prism//lib/prism/mutation_compiler.rb#249 + # source://prism//lib/prism/mutation_compiler.rb#250 def visit_embedded_statements_node(node); end # Copy a EmbeddedVariableNode node # - # source://prism//lib/prism/mutation_compiler.rb#254 + # source://prism//lib/prism/mutation_compiler.rb#255 def visit_embedded_variable_node(node); end # Copy a EnsureNode node # - # source://prism//lib/prism/mutation_compiler.rb#259 + # source://prism//lib/prism/mutation_compiler.rb#260 def visit_ensure_node(node); end # Copy a FalseNode node # - # source://prism//lib/prism/mutation_compiler.rb#264 + # source://prism//lib/prism/mutation_compiler.rb#265 def visit_false_node(node); end # Copy a FindPatternNode node # - # source://prism//lib/prism/mutation_compiler.rb#269 + # source://prism//lib/prism/mutation_compiler.rb#270 def visit_find_pattern_node(node); end # Copy a FlipFlopNode node # - # source://prism//lib/prism/mutation_compiler.rb#274 + # source://prism//lib/prism/mutation_compiler.rb#275 def visit_flip_flop_node(node); end # Copy a FloatNode node # - # source://prism//lib/prism/mutation_compiler.rb#279 + # source://prism//lib/prism/mutation_compiler.rb#280 def visit_float_node(node); end # Copy a ForNode node # - # source://prism//lib/prism/mutation_compiler.rb#284 + # source://prism//lib/prism/mutation_compiler.rb#285 def visit_for_node(node); end # Copy a ForwardingArgumentsNode node # - # source://prism//lib/prism/mutation_compiler.rb#289 + # source://prism//lib/prism/mutation_compiler.rb#290 def visit_forwarding_arguments_node(node); end # Copy a ForwardingParameterNode node # - # source://prism//lib/prism/mutation_compiler.rb#294 + # source://prism//lib/prism/mutation_compiler.rb#295 def visit_forwarding_parameter_node(node); end # Copy a ForwardingSuperNode node # - # source://prism//lib/prism/mutation_compiler.rb#299 + # source://prism//lib/prism/mutation_compiler.rb#300 def visit_forwarding_super_node(node); end # Copy a GlobalVariableAndWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#304 + # source://prism//lib/prism/mutation_compiler.rb#305 def visit_global_variable_and_write_node(node); end # Copy a GlobalVariableOperatorWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#309 + # source://prism//lib/prism/mutation_compiler.rb#310 def visit_global_variable_operator_write_node(node); end # Copy a GlobalVariableOrWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#314 + # source://prism//lib/prism/mutation_compiler.rb#315 def visit_global_variable_or_write_node(node); end # Copy a GlobalVariableReadNode node # - # source://prism//lib/prism/mutation_compiler.rb#319 + # source://prism//lib/prism/mutation_compiler.rb#320 def visit_global_variable_read_node(node); end # Copy a GlobalVariableTargetNode node # - # source://prism//lib/prism/mutation_compiler.rb#324 + # source://prism//lib/prism/mutation_compiler.rb#325 def visit_global_variable_target_node(node); end # Copy a GlobalVariableWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#329 + # source://prism//lib/prism/mutation_compiler.rb#330 def visit_global_variable_write_node(node); end # Copy a HashNode node # - # source://prism//lib/prism/mutation_compiler.rb#334 + # source://prism//lib/prism/mutation_compiler.rb#335 def visit_hash_node(node); end # Copy a HashPatternNode node # - # source://prism//lib/prism/mutation_compiler.rb#339 + # source://prism//lib/prism/mutation_compiler.rb#340 def visit_hash_pattern_node(node); end # Copy a IfNode node # - # source://prism//lib/prism/mutation_compiler.rb#344 + # source://prism//lib/prism/mutation_compiler.rb#345 def visit_if_node(node); end # Copy a ImaginaryNode node # - # source://prism//lib/prism/mutation_compiler.rb#349 + # source://prism//lib/prism/mutation_compiler.rb#350 def visit_imaginary_node(node); end # Copy a ImplicitNode node # - # source://prism//lib/prism/mutation_compiler.rb#354 + # source://prism//lib/prism/mutation_compiler.rb#355 def visit_implicit_node(node); end # Copy a ImplicitRestNode node # - # source://prism//lib/prism/mutation_compiler.rb#359 + # source://prism//lib/prism/mutation_compiler.rb#360 def visit_implicit_rest_node(node); end # Copy a InNode node # - # source://prism//lib/prism/mutation_compiler.rb#364 + # source://prism//lib/prism/mutation_compiler.rb#365 def visit_in_node(node); end # Copy a IndexAndWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#369 + # source://prism//lib/prism/mutation_compiler.rb#370 def visit_index_and_write_node(node); end # Copy a IndexOperatorWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#374 + # source://prism//lib/prism/mutation_compiler.rb#375 def visit_index_operator_write_node(node); end # Copy a IndexOrWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#379 + # source://prism//lib/prism/mutation_compiler.rb#380 def visit_index_or_write_node(node); end # Copy a IndexTargetNode node # - # source://prism//lib/prism/mutation_compiler.rb#384 + # source://prism//lib/prism/mutation_compiler.rb#385 def visit_index_target_node(node); end # Copy a InstanceVariableAndWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#389 + # source://prism//lib/prism/mutation_compiler.rb#390 def visit_instance_variable_and_write_node(node); end # Copy a InstanceVariableOperatorWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#394 + # source://prism//lib/prism/mutation_compiler.rb#395 def visit_instance_variable_operator_write_node(node); end # Copy a InstanceVariableOrWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#399 + # source://prism//lib/prism/mutation_compiler.rb#400 def visit_instance_variable_or_write_node(node); end # Copy a InstanceVariableReadNode node # - # source://prism//lib/prism/mutation_compiler.rb#404 + # source://prism//lib/prism/mutation_compiler.rb#405 def visit_instance_variable_read_node(node); end # Copy a InstanceVariableTargetNode node # - # source://prism//lib/prism/mutation_compiler.rb#409 + # source://prism//lib/prism/mutation_compiler.rb#410 def visit_instance_variable_target_node(node); end # Copy a InstanceVariableWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#414 + # source://prism//lib/prism/mutation_compiler.rb#415 def visit_instance_variable_write_node(node); end # Copy a IntegerNode node # - # source://prism//lib/prism/mutation_compiler.rb#419 + # source://prism//lib/prism/mutation_compiler.rb#420 def visit_integer_node(node); end # Copy a InterpolatedMatchLastLineNode node # - # source://prism//lib/prism/mutation_compiler.rb#424 + # source://prism//lib/prism/mutation_compiler.rb#425 def visit_interpolated_match_last_line_node(node); end # Copy a InterpolatedRegularExpressionNode node # - # source://prism//lib/prism/mutation_compiler.rb#429 + # source://prism//lib/prism/mutation_compiler.rb#430 def visit_interpolated_regular_expression_node(node); end # Copy a InterpolatedStringNode node # - # source://prism//lib/prism/mutation_compiler.rb#434 + # source://prism//lib/prism/mutation_compiler.rb#435 def visit_interpolated_string_node(node); end # Copy a InterpolatedSymbolNode node # - # source://prism//lib/prism/mutation_compiler.rb#439 + # source://prism//lib/prism/mutation_compiler.rb#440 def visit_interpolated_symbol_node(node); end # Copy a InterpolatedXStringNode node # - # source://prism//lib/prism/mutation_compiler.rb#444 + # source://prism//lib/prism/mutation_compiler.rb#445 def visit_interpolated_x_string_node(node); end + # Copy a ItParametersNode node + # + # source://prism//lib/prism/mutation_compiler.rb#450 + def visit_it_parameters_node(node); end + # Copy a KeywordHashNode node # - # source://prism//lib/prism/mutation_compiler.rb#449 + # source://prism//lib/prism/mutation_compiler.rb#455 def visit_keyword_hash_node(node); end # Copy a KeywordRestParameterNode node # - # source://prism//lib/prism/mutation_compiler.rb#454 + # source://prism//lib/prism/mutation_compiler.rb#460 def visit_keyword_rest_parameter_node(node); end # Copy a LambdaNode node # - # source://prism//lib/prism/mutation_compiler.rb#459 + # source://prism//lib/prism/mutation_compiler.rb#465 def visit_lambda_node(node); end # Copy a LocalVariableAndWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#464 + # source://prism//lib/prism/mutation_compiler.rb#470 def visit_local_variable_and_write_node(node); end # Copy a LocalVariableOperatorWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#469 + # source://prism//lib/prism/mutation_compiler.rb#475 def visit_local_variable_operator_write_node(node); end # Copy a LocalVariableOrWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#474 + # source://prism//lib/prism/mutation_compiler.rb#480 def visit_local_variable_or_write_node(node); end # Copy a LocalVariableReadNode node # - # source://prism//lib/prism/mutation_compiler.rb#479 + # source://prism//lib/prism/mutation_compiler.rb#485 def visit_local_variable_read_node(node); end # Copy a LocalVariableTargetNode node # - # source://prism//lib/prism/mutation_compiler.rb#484 + # source://prism//lib/prism/mutation_compiler.rb#490 def visit_local_variable_target_node(node); end # Copy a LocalVariableWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#489 + # source://prism//lib/prism/mutation_compiler.rb#495 def visit_local_variable_write_node(node); end # Copy a MatchLastLineNode node # - # source://prism//lib/prism/mutation_compiler.rb#494 + # source://prism//lib/prism/mutation_compiler.rb#500 def visit_match_last_line_node(node); end # Copy a MatchPredicateNode node # - # source://prism//lib/prism/mutation_compiler.rb#499 + # source://prism//lib/prism/mutation_compiler.rb#505 def visit_match_predicate_node(node); end # Copy a MatchRequiredNode node # - # source://prism//lib/prism/mutation_compiler.rb#504 + # source://prism//lib/prism/mutation_compiler.rb#510 def visit_match_required_node(node); end # Copy a MatchWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#509 + # source://prism//lib/prism/mutation_compiler.rb#515 def visit_match_write_node(node); end # Copy a MissingNode node # - # source://prism//lib/prism/mutation_compiler.rb#514 + # source://prism//lib/prism/mutation_compiler.rb#520 def visit_missing_node(node); end # Copy a ModuleNode node # - # source://prism//lib/prism/mutation_compiler.rb#519 + # source://prism//lib/prism/mutation_compiler.rb#525 def visit_module_node(node); end # Copy a MultiTargetNode node # - # source://prism//lib/prism/mutation_compiler.rb#524 + # source://prism//lib/prism/mutation_compiler.rb#530 def visit_multi_target_node(node); end # Copy a MultiWriteNode node # - # source://prism//lib/prism/mutation_compiler.rb#529 + # source://prism//lib/prism/mutation_compiler.rb#535 def visit_multi_write_node(node); end # Copy a NextNode node # - # source://prism//lib/prism/mutation_compiler.rb#534 + # source://prism//lib/prism/mutation_compiler.rb#540 def visit_next_node(node); end # Copy a NilNode node # - # source://prism//lib/prism/mutation_compiler.rb#539 + # source://prism//lib/prism/mutation_compiler.rb#545 def visit_nil_node(node); end # Copy a NoKeywordsParameterNode node # - # source://prism//lib/prism/mutation_compiler.rb#544 + # source://prism//lib/prism/mutation_compiler.rb#550 def visit_no_keywords_parameter_node(node); end # Copy a NumberedParametersNode node # - # source://prism//lib/prism/mutation_compiler.rb#549 + # source://prism//lib/prism/mutation_compiler.rb#555 def visit_numbered_parameters_node(node); end # Copy a NumberedReferenceReadNode node # - # source://prism//lib/prism/mutation_compiler.rb#554 + # source://prism//lib/prism/mutation_compiler.rb#560 def visit_numbered_reference_read_node(node); end # Copy a OptionalKeywordParameterNode node # - # source://prism//lib/prism/mutation_compiler.rb#559 + # source://prism//lib/prism/mutation_compiler.rb#565 def visit_optional_keyword_parameter_node(node); end # Copy a OptionalParameterNode node # - # source://prism//lib/prism/mutation_compiler.rb#564 + # source://prism//lib/prism/mutation_compiler.rb#570 def visit_optional_parameter_node(node); end # Copy a OrNode node # - # source://prism//lib/prism/mutation_compiler.rb#569 + # source://prism//lib/prism/mutation_compiler.rb#575 def visit_or_node(node); end # Copy a ParametersNode node # - # source://prism//lib/prism/mutation_compiler.rb#574 + # source://prism//lib/prism/mutation_compiler.rb#580 def visit_parameters_node(node); end # Copy a ParenthesesNode node # - # source://prism//lib/prism/mutation_compiler.rb#579 + # source://prism//lib/prism/mutation_compiler.rb#585 def visit_parentheses_node(node); end # Copy a PinnedExpressionNode node # - # source://prism//lib/prism/mutation_compiler.rb#584 + # source://prism//lib/prism/mutation_compiler.rb#590 def visit_pinned_expression_node(node); end # Copy a PinnedVariableNode node # - # source://prism//lib/prism/mutation_compiler.rb#589 + # source://prism//lib/prism/mutation_compiler.rb#595 def visit_pinned_variable_node(node); end # Copy a PostExecutionNode node # - # source://prism//lib/prism/mutation_compiler.rb#594 + # source://prism//lib/prism/mutation_compiler.rb#600 def visit_post_execution_node(node); end # Copy a PreExecutionNode node # - # source://prism//lib/prism/mutation_compiler.rb#599 + # source://prism//lib/prism/mutation_compiler.rb#605 def visit_pre_execution_node(node); end # Copy a ProgramNode node # - # source://prism//lib/prism/mutation_compiler.rb#604 + # source://prism//lib/prism/mutation_compiler.rb#610 def visit_program_node(node); end # Copy a RangeNode node # - # source://prism//lib/prism/mutation_compiler.rb#609 + # source://prism//lib/prism/mutation_compiler.rb#615 def visit_range_node(node); end # Copy a RationalNode node # - # source://prism//lib/prism/mutation_compiler.rb#614 + # source://prism//lib/prism/mutation_compiler.rb#620 def visit_rational_node(node); end # Copy a RedoNode node # - # source://prism//lib/prism/mutation_compiler.rb#619 + # source://prism//lib/prism/mutation_compiler.rb#625 def visit_redo_node(node); end # Copy a RegularExpressionNode node # - # source://prism//lib/prism/mutation_compiler.rb#624 + # source://prism//lib/prism/mutation_compiler.rb#630 def visit_regular_expression_node(node); end # Copy a RequiredKeywordParameterNode node # - # source://prism//lib/prism/mutation_compiler.rb#629 + # source://prism//lib/prism/mutation_compiler.rb#635 def visit_required_keyword_parameter_node(node); end # Copy a RequiredParameterNode node # - # source://prism//lib/prism/mutation_compiler.rb#634 + # source://prism//lib/prism/mutation_compiler.rb#640 def visit_required_parameter_node(node); end # Copy a RescueModifierNode node # - # source://prism//lib/prism/mutation_compiler.rb#639 + # source://prism//lib/prism/mutation_compiler.rb#645 def visit_rescue_modifier_node(node); end # Copy a RescueNode node # - # source://prism//lib/prism/mutation_compiler.rb#644 + # source://prism//lib/prism/mutation_compiler.rb#650 def visit_rescue_node(node); end # Copy a RestParameterNode node # - # source://prism//lib/prism/mutation_compiler.rb#649 + # source://prism//lib/prism/mutation_compiler.rb#655 def visit_rest_parameter_node(node); end # Copy a RetryNode node # - # source://prism//lib/prism/mutation_compiler.rb#654 + # source://prism//lib/prism/mutation_compiler.rb#660 def visit_retry_node(node); end # Copy a ReturnNode node # - # source://prism//lib/prism/mutation_compiler.rb#659 + # source://prism//lib/prism/mutation_compiler.rb#665 def visit_return_node(node); end # Copy a SelfNode node # - # source://prism//lib/prism/mutation_compiler.rb#664 + # source://prism//lib/prism/mutation_compiler.rb#670 def visit_self_node(node); end + # Copy a ShareableConstantNode node + # + # source://prism//lib/prism/mutation_compiler.rb#675 + def visit_shareable_constant_node(node); end + # Copy a SingletonClassNode node # - # source://prism//lib/prism/mutation_compiler.rb#669 + # source://prism//lib/prism/mutation_compiler.rb#680 def visit_singleton_class_node(node); end # Copy a SourceEncodingNode node # - # source://prism//lib/prism/mutation_compiler.rb#674 + # source://prism//lib/prism/mutation_compiler.rb#685 def visit_source_encoding_node(node); end # Copy a SourceFileNode node # - # source://prism//lib/prism/mutation_compiler.rb#679 + # source://prism//lib/prism/mutation_compiler.rb#690 def visit_source_file_node(node); end # Copy a SourceLineNode node # - # source://prism//lib/prism/mutation_compiler.rb#684 + # source://prism//lib/prism/mutation_compiler.rb#695 def visit_source_line_node(node); end # Copy a SplatNode node # - # source://prism//lib/prism/mutation_compiler.rb#689 + # source://prism//lib/prism/mutation_compiler.rb#700 def visit_splat_node(node); end # Copy a StatementsNode node # - # source://prism//lib/prism/mutation_compiler.rb#694 + # source://prism//lib/prism/mutation_compiler.rb#705 def visit_statements_node(node); end # Copy a StringNode node # - # source://prism//lib/prism/mutation_compiler.rb#699 + # source://prism//lib/prism/mutation_compiler.rb#710 def visit_string_node(node); end # Copy a SuperNode node # - # source://prism//lib/prism/mutation_compiler.rb#704 + # source://prism//lib/prism/mutation_compiler.rb#715 def visit_super_node(node); end # Copy a SymbolNode node # - # source://prism//lib/prism/mutation_compiler.rb#709 + # source://prism//lib/prism/mutation_compiler.rb#720 def visit_symbol_node(node); end # Copy a TrueNode node # - # source://prism//lib/prism/mutation_compiler.rb#714 + # source://prism//lib/prism/mutation_compiler.rb#725 def visit_true_node(node); end # Copy a UndefNode node # - # source://prism//lib/prism/mutation_compiler.rb#719 + # source://prism//lib/prism/mutation_compiler.rb#730 def visit_undef_node(node); end # Copy a UnlessNode node # - # source://prism//lib/prism/mutation_compiler.rb#724 + # source://prism//lib/prism/mutation_compiler.rb#735 def visit_unless_node(node); end # Copy a UntilNode node # - # source://prism//lib/prism/mutation_compiler.rb#729 + # source://prism//lib/prism/mutation_compiler.rb#740 def visit_until_node(node); end # Copy a WhenNode node # - # source://prism//lib/prism/mutation_compiler.rb#734 + # source://prism//lib/prism/mutation_compiler.rb#745 def visit_when_node(node); end # Copy a WhileNode node # - # source://prism//lib/prism/mutation_compiler.rb#739 + # source://prism//lib/prism/mutation_compiler.rb#750 def visit_while_node(node); end # Copy a XStringNode node # - # source://prism//lib/prism/mutation_compiler.rb#744 + # source://prism//lib/prism/mutation_compiler.rb#755 def visit_x_string_node(node); end # Copy a YieldNode node # - # source://prism//lib/prism/mutation_compiler.rb#749 + # source://prism//lib/prism/mutation_compiler.rb#760 def visit_yield_node(node); end + + Result = type_member end # Represents the use of the `next` keyword. @@ -20299,80 +22671,96 @@ end # next 1 # ^^^^^^ # -# source://prism//lib/prism/node.rb#13810 +# source://prism//lib/prism/node.rb#13440 class Prism::NextNode < ::Prism::Node # def initialize: (ArgumentsNode? arguments, Location keyword_loc, Location location) -> void # # @return [NextNode] a new instance of NextNode # - # source://prism//lib/prism/node.rb#13812 + # source://prism//lib/prism/node.rb#13442 + sig do + params( + source: Prism::Source, + arguments: T.nilable(Prism::ArgumentsNode), + keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, arguments, keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#13821 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#13451 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader arguments: ArgumentsNode? # - # source://prism//lib/prism/node.rb#13861 + # source://prism//lib/prism/node.rb#13486 sig { returns(T.nilable(Prism::ArgumentsNode)) } def arguments; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13826 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13456 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#13838 + # source://prism//lib/prism/node.rb#13468 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#13831 + # source://prism//lib/prism/node.rb#13461 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> NextNode + # def copy: (?arguments: ArgumentsNode?, ?keyword_loc: Location, ?location: Location) -> NextNode # - # source://prism//lib/prism/node.rb#13843 - sig { params(params: T.untyped).returns(Prism::NextNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#13473 + sig do + params( + arguments: T.nilable(Prism::ArgumentsNode), + keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::NextNode) + end + def copy(arguments: T.unsafe(nil), keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13826 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13456 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { arguments: ArgumentsNode?, keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#13856 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#13481 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#13876 + # source://prism//lib/prism/node.rb#13502 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#13871 + # source://prism//lib/prism/node.rb#13497 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#13864 + # source://prism//lib/prism/node.rb#13489 sig { returns(Prism::Location) } def keyword_loc; end @@ -20391,7 +22779,8 @@ class Prism::NextNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#13902 + # source://prism//lib/prism/node.rb#13528 + sig { override.returns(Symbol) } def type; end class << self @@ -20402,7 +22791,7 @@ class Prism::NextNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#13912 + # source://prism//lib/prism/node.rb#13538 def type; end end end @@ -20412,63 +22801,66 @@ end # nil # ^^^ # -# source://prism//lib/prism/node.rb#13921 +# source://prism//lib/prism/node.rb#13547 class Prism::NilNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [NilNode] a new instance of NilNode # - # source://prism//lib/prism/node.rb#13923 + # source://prism//lib/prism/node.rb#13549 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#13930 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#13556 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13935 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13561 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#13945 + # source://prism//lib/prism/node.rb#13571 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#13940 + # source://prism//lib/prism/node.rb#13566 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> NilNode + # def copy: (?location: Location) -> NilNode # - # source://prism//lib/prism/node.rb#13950 - sig { params(params: T.untyped).returns(Prism::NilNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#13576 + sig { params(location: Prism::Location).returns(Prism::NilNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#13935 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13561 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#13961 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#13584 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#13967 + # source://prism//lib/prism/node.rb#13590 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -20486,7 +22878,8 @@ class Prism::NilNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#13986 + # source://prism//lib/prism/node.rb#13609 + sig { override.returns(Symbol) } def type; end class << self @@ -20497,7 +22890,7 @@ class Prism::NilNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#13996 + # source://prism//lib/prism/node.rb#13619 def type; end end end @@ -20508,86 +22901,102 @@ end # ^^^^^ # end # -# source://prism//lib/prism/node.rb#14006 +# source://prism//lib/prism/node.rb#13629 class Prism::NoKeywordsParameterNode < ::Prism::Node # def initialize: (Location operator_loc, Location keyword_loc, Location location) -> void # # @return [NoKeywordsParameterNode] a new instance of NoKeywordsParameterNode # - # source://prism//lib/prism/node.rb#14008 + # source://prism//lib/prism/node.rb#13631 + sig do + params( + source: Prism::Source, + operator_loc: Prism::Location, + keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, operator_loc, keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#14017 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#13640 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14022 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13645 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#14032 + # source://prism//lib/prism/node.rb#13655 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#14027 + # source://prism//lib/prism/node.rb#13650 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> NoKeywordsParameterNode + # def copy: (?operator_loc: Location, ?keyword_loc: Location, ?location: Location) -> NoKeywordsParameterNode # - # source://prism//lib/prism/node.rb#14037 - sig { params(params: T.untyped).returns(Prism::NoKeywordsParameterNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#13660 + sig do + params( + operator_loc: Prism::Location, + keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::NoKeywordsParameterNode) + end + def copy(operator_loc: T.unsafe(nil), keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14022 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13645 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { operator_loc: Location, keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#14050 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#13668 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#14078 + # source://prism//lib/prism/node.rb#13698 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#14073 + # source://prism//lib/prism/node.rb#13693 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#14061 + # source://prism//lib/prism/node.rb#13680 sig { returns(Prism::Location) } def keyword_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#14068 + # source://prism//lib/prism/node.rb#13688 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#14055 + # source://prism//lib/prism/node.rb#13673 sig { returns(Prism::Location) } def operator_loc; end @@ -20606,7 +23015,8 @@ class Prism::NoKeywordsParameterNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#14099 + # source://prism//lib/prism/node.rb#13719 + sig { override.returns(Symbol) } def type; end class << self @@ -20617,7 +23027,7 @@ class Prism::NoKeywordsParameterNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#14109 + # source://prism//lib/prism/node.rb#13729 def type; end end end @@ -20625,14 +23035,16 @@ end # This represents a node in the tree. It is the parent class of all of the # various node types. # -# source://prism//lib/prism/node.rb#11 +# source://prism//lib/prism/node.rb#12 class Prism::Node + abstract! + # Accepts a visitor and calls back into the specialized visit function. # # @raise [NoMethodError] # - # source://prism//lib/prism/node.rb#62 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#90 + sig { abstract.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # Returns an array of child nodes, including `nil`s in the place of optional @@ -20640,8 +23052,8 @@ class Prism::Node # # @raise [NoMethodError] # - # source://prism//lib/prism/node.rb#68 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#96 + sig { abstract.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # Returns an array of child nodes and locations that could potentially have @@ -20649,7 +23061,8 @@ class Prism::Node # # @raise [NoMethodError] # - # source://prism//lib/prism/node.rb#82 + # source://prism//lib/prism/node.rb#110 + sig { abstract.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # Returns an array of child nodes, excluding any `nil`s in the place of @@ -20657,8 +23070,8 @@ class Prism::Node # # @raise [NoMethodError] # - # source://prism//lib/prism/node.rb#76 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#104 + sig { abstract.returns(T::Array[Prism::Node]) } def compact_child_nodes; end # Returns an array of child nodes, including `nil`s in the place of optional @@ -20666,40 +23079,66 @@ class Prism::Node # # @raise [NoMethodError] # - # source://prism//lib/prism/node.rb#68 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#96 + sig { abstract.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end + # The end offset of the node in the source. This method is effectively a + # delegate method to the location object. + # + # source://prism//lib/prism/node.rb#34 + sig { returns(Integer) } + def end_offset; end + + sig { abstract.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + + # Returns a string representation of the node. + # + # @raise [NoMethodError] + # + # source://prism//lib/prism/node.rb#121 + sig { abstract.params(inspector: Prism::NodeInspector).returns(String) } + def inspect(inspector = T.unsafe(nil)); end + # A Location instance that represents the location of this node in the # source. # - # source://prism//lib/prism/node.rb#18 + # source://prism//lib/prism/node.rb#19 sig { returns(Prism::Location) } def location; end # @return [Boolean] # - # source://prism//lib/prism/node.rb#23 + # source://prism//lib/prism/node.rb#39 def newline?; end # Similar to inspect, but respects the current level of indentation given by # the pretty print object. # - # source://prism//lib/prism/node.rb#42 + # source://prism//lib/prism/node.rb#58 + sig { params(q: T.untyped).void } def pretty_print(q); end - # source://prism//lib/prism/node.rb#27 + # source://prism//lib/prism/node.rb#43 def set_newline_flag(newline_marked); end # Slice the location of the node from the source. # - # source://prism//lib/prism/node.rb#36 + # source://prism//lib/prism/node.rb#52 sig { returns(String) } def slice; end + # The start offset of the node in the source. This method is effectively a + # delegate method to the location object. + # + # source://prism//lib/prism/node.rb#27 + sig { returns(Integer) } + def start_offset; end + # Convert this node into a graphviz dot graph string. # - # source://prism//lib/prism/node.rb#50 + # source://prism//lib/prism/node.rb#66 sig { returns(String) } def to_dot; end @@ -20708,16 +23147,34 @@ class Prism::Node # # @raise [NoMethodError] # - # source://prism//lib/prism/node.rb#88 - sig { returns(Symbol) } + # source://prism//lib/prism/node.rb#116 + sig { abstract.returns(Symbol) } def type; end private # A pointer to the source that this node was created from. # - # source://prism//lib/prism/node.rb#13 + # source://prism//lib/prism/node.rb#14 def source; end + + class << self + # Returns a list of the fields that exist for this node class. Fields + # describe the structure of the node. This kind of reflection is useful for + # things like recursively visiting each node _and_ field in the tree. + # + # @raise [NoMethodError] + # + # source://prism//lib/prism/node.rb#74 + def fields; end + + # Returns the type of the node as a symbol. + # + # @raise [NoMethodError] + # + # source://prism//lib/prism/node.rb#126 + def type; end + end end # This object is responsible for generating the output for the inspect method @@ -20733,55 +23190,44 @@ class Prism::NodeInspector # Appends a line to the output with the current prefix. # # source://prism//lib/prism/node_inspector.rb#15 - sig { params(line: String).void } def <<(line); end # Returns a new inspector that can be used to inspect a child node. # # source://prism//lib/prism/node_inspector.rb#59 - sig { params(append: String).returns(Prism::NodeInspector) } def child_inspector(append); end # Generates a string that represents a child node. # # source://prism//lib/prism/node_inspector.rb#54 - sig { params(node: Prism::Node, append: String).returns(String) } def child_node(node, append); end # This generates a string that is used as the header of the inspect output # for any given node. # # source://prism//lib/prism/node_inspector.rb#21 - # This generates a string that is used as the header of the inspect output - sig { params(node: Prism::Node).returns(String) } def header(node); end # Generates a string that represents a list of nodes. It handles properly # using the box drawing characters to make the output look nice. # # source://prism//lib/prism/node_inspector.rb#31 - # Generates a string that represents a list of nodes. It handles properly - sig { params(prefix: String, nodes: T::Array[Prism::Node]).returns(String) } def list(prefix, nodes); end # Generates a string that represents a location field on a node. # # source://prism//lib/prism/node_inspector.rb#45 - sig { params(value: Prism::Location).returns(String) } def location(value); end # source://prism//lib/prism/node_inspector.rb#7 - sig { returns(String) } def output; end # source://prism//lib/prism/node_inspector.rb#7 - sig { returns(String) } def prefix; end # Returns the output as a string. # # source://prism//lib/prism/node_inspector.rb#64 - sig { returns(String) } def to_str; end end @@ -20790,68 +23236,71 @@ end # -> { _1 + _2 } # ^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#14118 +# source://prism//lib/prism/node.rb#13738 class Prism::NumberedParametersNode < ::Prism::Node # def initialize: (Integer maximum, Location location) -> void # # @return [NumberedParametersNode] a new instance of NumberedParametersNode # - # source://prism//lib/prism/node.rb#14120 + # source://prism//lib/prism/node.rb#13740 + sig { params(source: Prism::Source, maximum: Integer, location: Prism::Location).void } def initialize(source, maximum, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#14128 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#13748 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14133 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13753 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#14143 + # source://prism//lib/prism/node.rb#13763 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#14138 + # source://prism//lib/prism/node.rb#13758 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> NumberedParametersNode + # def copy: (?maximum: Integer, ?location: Location) -> NumberedParametersNode # - # source://prism//lib/prism/node.rb#14148 - sig { params(params: T.untyped).returns(Prism::NumberedParametersNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#13768 + sig { params(maximum: Integer, location: Prism::Location).returns(Prism::NumberedParametersNode) } + def copy(maximum: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14133 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13753 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { maximum: Integer, location: Location } # - # source://prism//lib/prism/node.rb#14160 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#13776 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#14169 + # source://prism//lib/prism/node.rb#13785 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader maximum: Integer # - # source://prism//lib/prism/node.rb#14165 + # source://prism//lib/prism/node.rb#13781 sig { returns(Integer) } def maximum; end @@ -20870,7 +23319,8 @@ class Prism::NumberedParametersNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#14189 + # source://prism//lib/prism/node.rb#13805 + sig { override.returns(Symbol) } def type; end class << self @@ -20881,7 +23331,7 @@ class Prism::NumberedParametersNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#14199 + # source://prism//lib/prism/node.rb#13815 def type; end end end @@ -20891,74 +23341,77 @@ end # $1 # ^^ # -# source://prism//lib/prism/node.rb#14208 +# source://prism//lib/prism/node.rb#13824 class Prism::NumberedReferenceReadNode < ::Prism::Node # def initialize: (Integer number, Location location) -> void # # @return [NumberedReferenceReadNode] a new instance of NumberedReferenceReadNode # - # source://prism//lib/prism/node.rb#14210 + # source://prism//lib/prism/node.rb#13826 + sig { params(source: Prism::Source, number: Integer, location: Prism::Location).void } def initialize(source, number, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#14218 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#13834 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14223 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13839 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#14233 + # source://prism//lib/prism/node.rb#13849 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#14228 + # source://prism//lib/prism/node.rb#13844 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> NumberedReferenceReadNode + # def copy: (?number: Integer, ?location: Location) -> NumberedReferenceReadNode # - # source://prism//lib/prism/node.rb#14238 - sig { params(params: T.untyped).returns(Prism::NumberedReferenceReadNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#13854 + sig { params(number: Integer, location: Prism::Location).returns(Prism::NumberedReferenceReadNode) } + def copy(number: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14223 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13839 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { number: Integer, location: Location } # - # source://prism//lib/prism/node.rb#14250 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#13862 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#14265 + # source://prism//lib/prism/node.rb#13877 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # The (1-indexed, from the left) number of the capture group. Numbered references that would overflow a `uint32` result in a `number` of exactly `2**32 - 1`. + # The (1-indexed, from the left) number of the capture group. Numbered references that are too large result in this value being `0`. # # $1 # number `1` # # $5432 # number `5432` # - # $4294967296 # number `4294967295` + # $4294967296 # number `0` # - # source://prism//lib/prism/node.rb#14261 + # source://prism//lib/prism/node.rb#13873 sig { returns(Integer) } def number; end @@ -20977,7 +23430,8 @@ class Prism::NumberedReferenceReadNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#14285 + # source://prism//lib/prism/node.rb#13897 + sig { override.returns(Symbol) } def type; end class << self @@ -20988,7 +23442,7 @@ class Prism::NumberedReferenceReadNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#14295 + # source://prism//lib/prism/node.rb#13907 def type; end end end @@ -20999,74 +23453,94 @@ end # ^^^^ # end # -# source://prism//lib/prism/node.rb#14305 +# source://prism//lib/prism/node.rb#13917 class Prism::OptionalKeywordParameterNode < ::Prism::Node - # def initialize: (Integer flags, Symbol name, Location name_loc, Node value, Location location) -> void + # def initialize: (Integer flags, Symbol name, Location name_loc, Prism::node value, Location location) -> void # # @return [OptionalKeywordParameterNode] a new instance of OptionalKeywordParameterNode # - # source://prism//lib/prism/node.rb#14307 + # source://prism//lib/prism/node.rb#13919 + sig do + params( + source: Prism::Source, + flags: Integer, + name: Symbol, + name_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, flags, name, name_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#14318 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#13930 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14323 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13935 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#14333 + # source://prism//lib/prism/node.rb#13945 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#14328 + # source://prism//lib/prism/node.rb#13940 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> OptionalKeywordParameterNode + # def copy: (?flags: Integer, ?name: Symbol, ?name_loc: Location, ?value: Prism::node, ?location: Location) -> OptionalKeywordParameterNode # - # source://prism//lib/prism/node.rb#14338 - sig { params(params: T.untyped).returns(Prism::OptionalKeywordParameterNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#13950 + sig do + params( + flags: Integer, + name: Symbol, + name_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::OptionalKeywordParameterNode) + end + def copy(flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14323 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#13935 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, name: Symbol, name_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, name: Symbol, name_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#14353 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#13958 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#14380 + # source://prism//lib/prism/node.rb#13986 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#14362 + # source://prism//lib/prism/node.rb#13967 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#14365 + # source://prism//lib/prism/node.rb#13970 sig { returns(Prism::Location) } def name_loc; end @@ -21074,7 +23548,7 @@ class Prism::OptionalKeywordParameterNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#14375 + # source://prism//lib/prism/node.rb#13981 sig { returns(T::Boolean) } def repeated_parameter?; end @@ -21093,12 +23567,13 @@ class Prism::OptionalKeywordParameterNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#14405 + # source://prism//lib/prism/node.rb#14011 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#14371 + # source://prism//lib/prism/node.rb#13977 sig { returns(Prism::Node) } def value; end @@ -21106,7 +23581,7 @@ class Prism::OptionalKeywordParameterNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#14358 + # source://prism//lib/prism/node.rb#13963 sig { returns(Integer) } def flags; end @@ -21118,7 +23593,7 @@ class Prism::OptionalKeywordParameterNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#14415 + # source://prism//lib/prism/node.rb#14021 def type; end end end @@ -21129,86 +23604,108 @@ end # ^^^^^ # end # -# source://prism//lib/prism/node.rb#14425 +# source://prism//lib/prism/node.rb#14031 class Prism::OptionalParameterNode < ::Prism::Node - # def initialize: (Integer flags, Symbol name, Location name_loc, Location operator_loc, Node value, Location location) -> void + # def initialize: (Integer flags, Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void # # @return [OptionalParameterNode] a new instance of OptionalParameterNode # - # source://prism//lib/prism/node.rb#14427 + # source://prism//lib/prism/node.rb#14033 + sig do + params( + source: Prism::Source, + flags: Integer, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, flags, name, name_loc, operator_loc, value, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#14439 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#14045 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14444 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14050 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#14454 + # source://prism//lib/prism/node.rb#14060 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#14449 + # source://prism//lib/prism/node.rb#14055 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> OptionalParameterNode + # def copy: (?flags: Integer, ?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?location: Location) -> OptionalParameterNode # - # source://prism//lib/prism/node.rb#14459 - sig { params(params: T.untyped).returns(Prism::OptionalParameterNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#14065 + sig do + params( + flags: Integer, + name: Symbol, + name_loc: Prism::Location, + operator_loc: Prism::Location, + value: Prism::Node, + location: Prism::Location + ).returns(Prism::OptionalParameterNode) + end + def copy(flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14444 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14050 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, name: Symbol, name_loc: Location, operator_loc: Location, value: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#14475 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#14073 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#14513 + # source://prism//lib/prism/node.rb#14113 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#14484 + # source://prism//lib/prism/node.rb#14082 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#14487 + # source://prism//lib/prism/node.rb#14085 sig { returns(Prism::Location) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#14508 + # source://prism//lib/prism/node.rb#14108 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#14493 + # source://prism//lib/prism/node.rb#14092 sig { returns(Prism::Location) } def operator_loc; end @@ -21216,7 +23713,7 @@ class Prism::OptionalParameterNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#14503 + # source://prism//lib/prism/node.rb#14103 sig { returns(T::Boolean) } def repeated_parameter?; end @@ -21235,12 +23732,13 @@ class Prism::OptionalParameterNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#14539 + # source://prism//lib/prism/node.rb#14139 + sig { override.returns(Symbol) } def type; end - # attr_reader value: Node + # attr_reader value: Prism::node # - # source://prism//lib/prism/node.rb#14499 + # source://prism//lib/prism/node.rb#14099 sig { returns(Prism::Node) } def value; end @@ -21248,7 +23746,7 @@ class Prism::OptionalParameterNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#14480 + # source://prism//lib/prism/node.rb#14078 sig { returns(Integer) } def flags; end @@ -21260,7 +23758,7 @@ class Prism::OptionalParameterNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#14549 + # source://prism//lib/prism/node.rb#14149 def type; end end end @@ -21270,63 +23768,81 @@ end # left or right # ^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#14558 +# source://prism//lib/prism/node.rb#14158 class Prism::OrNode < ::Prism::Node - # def initialize: (Node left, Node right, Location operator_loc, Location location) -> void + # def initialize: (Prism::node left, Prism::node right, Location operator_loc, Location location) -> void # # @return [OrNode] a new instance of OrNode # - # source://prism//lib/prism/node.rb#14560 + # source://prism//lib/prism/node.rb#14160 + sig do + params( + source: Prism::Source, + left: Prism::Node, + right: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, left, right, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#14570 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#14170 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14575 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14175 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#14585 + # source://prism//lib/prism/node.rb#14185 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#14580 + # source://prism//lib/prism/node.rb#14180 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> OrNode + # def copy: (?left: Prism::node, ?right: Prism::node, ?operator_loc: Location, ?location: Location) -> OrNode # - # source://prism//lib/prism/node.rb#14590 - sig { params(params: T.untyped).returns(Prism::OrNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#14190 + sig do + params( + left: Prism::Node, + right: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::OrNode) + end + def copy(left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14575 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14175 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { left: Node, right: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { left: Prism::node, right: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#14604 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#14198 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#14642 + # source://prism//lib/prism/node.rb#14237 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Represents the left side of the expression. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression). @@ -21337,13 +23853,13 @@ class Prism::OrNode < ::Prism::Node # 1 || 2 # ^ # - # source://prism//lib/prism/node.rb#14615 + # source://prism//lib/prism/node.rb#14209 sig { returns(Prism::Node) } def left; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#14637 + # source://prism//lib/prism/node.rb#14232 sig { returns(String) } def operator; end @@ -21352,7 +23868,7 @@ class Prism::OrNode < ::Prism::Node # left or right # ^^ # - # source://prism//lib/prism/node.rb#14630 + # source://prism//lib/prism/node.rb#14224 sig { returns(Prism::Location) } def operator_loc; end @@ -21364,7 +23880,7 @@ class Prism::OrNode < ::Prism::Node # 1 or 2 # ^ # - # source://prism//lib/prism/node.rb#14624 + # source://prism//lib/prism/node.rb#14218 sig { returns(Prism::Node) } def right; end @@ -21383,7 +23899,8 @@ class Prism::OrNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#14666 + # source://prism//lib/prism/node.rb#14261 + sig { override.returns(Symbol) } def type; end class << self @@ -21394,261 +23911,261 @@ class Prism::OrNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#14676 + # source://prism//lib/prism/node.rb#14271 def type; end end end # A parser for the pack template language. # -# source://prism//lib/prism/pack.rb#5 +# source://prism//lib/prism/pack.rb#6 module Prism::Pack class << self def parse(_arg0, _arg1, _arg2); end end end -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::AGNOSTIC_ENDIAN = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::BACK = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::BER = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::BIG_ENDIAN = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::COMMENT = T.let(T.unsafe(nil), Symbol) # A directive in the pack template language. # -# source://prism//lib/prism/pack.rb#59 +# source://prism//lib/prism/pack.rb#60 class Prism::Pack::Directive # Initialize a new directive with the given values. # # @return [Directive] a new instance of Directive # - # source://prism//lib/prism/pack.rb#88 + # source://prism//lib/prism/pack.rb#89 def initialize(version, variant, source, type, signed, endian, size, length_type, length); end # Provide a human-readable description of the directive. # - # source://prism//lib/prism/pack.rb#130 + # source://prism//lib/prism/pack.rb#131 def describe; end # The type of endianness of the directive. # - # source://prism//lib/prism/pack.rb#76 + # source://prism//lib/prism/pack.rb#77 def endian; end # The length of this directive (used for integers). # - # source://prism//lib/prism/pack.rb#85 + # source://prism//lib/prism/pack.rb#86 def length; end # The length type of this directive (used for integers). # - # source://prism//lib/prism/pack.rb#82 + # source://prism//lib/prism/pack.rb#83 def length_type; end # The type of signedness of the directive. # - # source://prism//lib/prism/pack.rb#73 + # source://prism//lib/prism/pack.rb#74 def signed; end # The size of the directive. # - # source://prism//lib/prism/pack.rb#79 + # source://prism//lib/prism/pack.rb#80 def size; end # A byteslice of the source string that this directive represents. # - # source://prism//lib/prism/pack.rb#67 + # source://prism//lib/prism/pack.rb#68 def source; end # The type of the directive. # - # source://prism//lib/prism/pack.rb#70 + # source://prism//lib/prism/pack.rb#71 def type; end # A symbol representing whether or not we are packing or unpacking. # - # source://prism//lib/prism/pack.rb#64 + # source://prism//lib/prism/pack.rb#65 def variant; end # A symbol representing the version of Ruby. # - # source://prism//lib/prism/pack.rb#61 + # source://prism//lib/prism/pack.rb#62 def version; end end # The descriptions of the various types of endianness. # -# source://prism//lib/prism/pack.rb#101 +# source://prism//lib/prism/pack.rb#102 Prism::Pack::Directive::ENDIAN_DESCRIPTIONS = T.let(T.unsafe(nil), Hash) # The descriptions of the various types of signedness. # -# source://prism//lib/prism/pack.rb#110 +# source://prism//lib/prism/pack.rb#111 Prism::Pack::Directive::SIGNED_DESCRIPTIONS = T.let(T.unsafe(nil), Hash) # The descriptions of the various types of sizes. # -# source://prism//lib/prism/pack.rb#117 +# source://prism//lib/prism/pack.rb#118 Prism::Pack::Directive::SIZE_DESCRIPTIONS = T.let(T.unsafe(nil), Hash) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::ENDIAN_NA = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::FLOAT = T.let(T.unsafe(nil), Symbol) # The result of parsing a pack template. # -# source://prism//lib/prism/pack.rb#195 +# source://prism//lib/prism/pack.rb#198 class Prism::Pack::Format # Create a new Format with the given directives and encoding. # # @return [Format] a new instance of Format # - # source://prism//lib/prism/pack.rb#203 + # source://prism//lib/prism/pack.rb#206 def initialize(directives, encoding); end # Provide a human-readable description of the format. # - # source://prism//lib/prism/pack.rb#209 + # source://prism//lib/prism/pack.rb#212 def describe; end # A list of the directives in the template. # - # source://prism//lib/prism/pack.rb#197 + # source://prism//lib/prism/pack.rb#200 def directives; end # The encoding of the template. # - # source://prism//lib/prism/pack.rb#200 + # source://prism//lib/prism/pack.rb#203 def encoding; end end -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::INTEGER = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::LENGTH_FIXED = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::LENGTH_MAX = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::LENGTH_NA = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::LENGTH_RELATIVE = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::LITTLE_ENDIAN = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::MOVE = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::NATIVE_ENDIAN = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::NULL = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIGNED = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIGNED_NA = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIZE_16 = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIZE_32 = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIZE_64 = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIZE_8 = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIZE_INT = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIZE_LONG = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIZE_LONG_LONG = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIZE_NA = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIZE_P = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SIZE_SHORT = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::SPACE = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_BASE64 = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_FIXED = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_HEX_HIGH = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_HEX_LOW = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_LSB = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_MIME = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_MSB = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_NULL_PADDED = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_NULL_TERMINATED = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_POINTER = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_SPACE_PADDED = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::STRING_UU = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::UNSIGNED = T.let(T.unsafe(nil), Symbol) -# source://prism//lib/prism/pack.rb#55 +# source://prism//lib/prism/pack.rb#56 Prism::Pack::UTF8 = T.let(T.unsafe(nil), Symbol) # Flags for parameter nodes. # -# source://prism//lib/prism/node.rb#19304 +# source://prism//lib/prism/node.rb#18902 module Prism::ParameterFlags; end # a parameter name that has been repeated in the method signature # -# source://prism//lib/prism/node.rb#19306 +# source://prism//lib/prism/node.rb#18904 Prism::ParameterFlags::REPEATED_PARAMETER = T.let(T.unsafe(nil), Integer) # Represents the list of parameters on a method, block, or lambda definition. @@ -21657,110 +24174,141 @@ Prism::ParameterFlags::REPEATED_PARAMETER = T.let(T.unsafe(nil), Integer) # ^^^^^^^ # end # -# source://prism//lib/prism/node.rb#14686 +# source://prism//lib/prism/node.rb#14281 class Prism::ParametersNode < ::Prism::Node - # def initialize: (Array[Node] requireds, Array[Node] optionals, Node? rest, Array[Node] posts, Array[Node] keywords, Node? keyword_rest, BlockParameterNode? block, Location location) -> void + # def initialize: (Array[RequiredParameterNode | MultiTargetNode] requireds, Array[OptionalParameterNode] optionals, RestParameterNode | ImplicitRestNode | nil rest, Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode] posts, Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode] keywords, KeywordRestParameterNode | ForwardingParameterNode | NoKeywordsParameterNode | nil keyword_rest, BlockParameterNode? block, Location location) -> void # # @return [ParametersNode] a new instance of ParametersNode # - # source://prism//lib/prism/node.rb#14688 + # source://prism//lib/prism/node.rb#14283 + sig do + params( + source: Prism::Source, + requireds: T::Array[T.any(Prism::RequiredParameterNode, Prism::MultiTargetNode)], + optionals: T::Array[Prism::OptionalParameterNode], + rest: T.nilable(T.any(Prism::RestParameterNode, Prism::ImplicitRestNode)), + posts: T::Array[T.any(Prism::RequiredParameterNode, Prism::MultiTargetNode, Prism::KeywordRestParameterNode, Prism::NoKeywordsParameterNode)], + keywords: T::Array[T.any(Prism::RequiredKeywordParameterNode, Prism::OptionalKeywordParameterNode)], + keyword_rest: T.nilable(T.any(Prism::KeywordRestParameterNode, Prism::ForwardingParameterNode, Prism::NoKeywordsParameterNode)), + block: T.nilable(Prism::BlockParameterNode), + location: Prism::Location + ).void + end def initialize(source, requireds, optionals, rest, posts, keywords, keyword_rest, block, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#14702 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#14297 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader block: BlockParameterNode? # - # source://prism//lib/prism/node.rb#14771 + # source://prism//lib/prism/node.rb#14356 sig { returns(T.nilable(Prism::BlockParameterNode)) } def block; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14707 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14302 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#14725 + # source://prism//lib/prism/node.rb#14320 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#14712 + # source://prism//lib/prism/node.rb#14307 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ParametersNode + # def copy: (?requireds: Array[RequiredParameterNode | MultiTargetNode], ?optionals: Array[OptionalParameterNode], ?rest: RestParameterNode | ImplicitRestNode | nil, ?posts: Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode], ?keywords: Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode], ?keyword_rest: KeywordRestParameterNode | ForwardingParameterNode | NoKeywordsParameterNode | nil, ?block: BlockParameterNode?, ?location: Location) -> ParametersNode # - # source://prism//lib/prism/node.rb#14730 - sig { params(params: T.untyped).returns(Prism::ParametersNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#14325 + sig do + params( + requireds: T::Array[T.any(Prism::RequiredParameterNode, Prism::MultiTargetNode)], + optionals: T::Array[Prism::OptionalParameterNode], + rest: T.nilable(T.any(Prism::RestParameterNode, Prism::ImplicitRestNode)), + posts: T::Array[T.any(Prism::RequiredParameterNode, Prism::MultiTargetNode, Prism::KeywordRestParameterNode, Prism::NoKeywordsParameterNode)], + keywords: T::Array[T.any(Prism::RequiredKeywordParameterNode, Prism::OptionalKeywordParameterNode)], + keyword_rest: T.nilable(T.any(Prism::KeywordRestParameterNode, Prism::ForwardingParameterNode, Prism::NoKeywordsParameterNode)), + block: T.nilable(Prism::BlockParameterNode), + location: Prism::Location + ).returns(Prism::ParametersNode) + end + def copy(requireds: T.unsafe(nil), optionals: T.unsafe(nil), rest: T.unsafe(nil), posts: T.unsafe(nil), keywords: T.unsafe(nil), keyword_rest: T.unsafe(nil), block: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14707 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14302 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { requireds: Array[Node], optionals: Array[Node], rest: Node?, posts: Array[Node], keywords: Array[Node], keyword_rest: Node?, block: BlockParameterNode?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { requireds: Array[RequiredParameterNode | MultiTargetNode], optionals: Array[OptionalParameterNode], rest: RestParameterNode | ImplicitRestNode | nil, posts: Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode], keywords: Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode], keyword_rest: KeywordRestParameterNode | ForwardingParameterNode | NoKeywordsParameterNode | nil, block: BlockParameterNode?, location: Location } # - # source://prism//lib/prism/node.rb#14748 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#14333 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#14775 + # source://prism//lib/prism/node.rb#14360 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader keyword_rest: Node? + # attr_reader keyword_rest: KeywordRestParameterNode | ForwardingParameterNode | NoKeywordsParameterNode | nil # - # source://prism//lib/prism/node.rb#14768 - sig { returns(T.nilable(Prism::Node)) } + # source://prism//lib/prism/node.rb#14353 + sig do + returns(T.nilable(T.any(Prism::KeywordRestParameterNode, Prism::ForwardingParameterNode, Prism::NoKeywordsParameterNode))) + end def keyword_rest; end - # attr_reader keywords: Array[Node] + # attr_reader keywords: Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode] # - # source://prism//lib/prism/node.rb#14765 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#14350 + sig { returns(T::Array[T.any(Prism::RequiredKeywordParameterNode, Prism::OptionalKeywordParameterNode)]) } def keywords; end - # attr_reader optionals: Array[Node] + # attr_reader optionals: Array[OptionalParameterNode] # - # source://prism//lib/prism/node.rb#14756 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#14341 + sig { returns(T::Array[Prism::OptionalParameterNode]) } def optionals; end - # attr_reader posts: Array[Node] + # attr_reader posts: Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode] # - # source://prism//lib/prism/node.rb#14762 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#14347 + sig do + returns(T::Array[T.any(Prism::RequiredParameterNode, Prism::MultiTargetNode, Prism::KeywordRestParameterNode, Prism::NoKeywordsParameterNode)]) + end def posts; end - # attr_reader requireds: Array[Node] + # attr_reader requireds: Array[RequiredParameterNode | MultiTargetNode] # - # source://prism//lib/prism/node.rb#14753 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#14338 + sig { returns(T::Array[T.any(Prism::RequiredParameterNode, Prism::MultiTargetNode)]) } def requireds; end - # attr_reader rest: Node? + # attr_reader rest: RestParameterNode | ImplicitRestNode | nil # - # source://prism//lib/prism/node.rb#14759 - sig { returns(T.nilable(Prism::Node)) } + # source://prism//lib/prism/node.rb#14344 + sig { returns(T.nilable(T.any(Prism::RestParameterNode, Prism::ImplicitRestNode))) } def rest; end # Mirrors the Method#parameters method. # - # source://prism//lib/prism/node_ext.rb#172 + # source://prism//lib/prism/node_ext.rb#210 + sig { returns(T::Array[T.any([Symbol, Symbol], [Symbol])]) } def signature; end # Sometimes you want to check an instance of a node against a list of @@ -21778,7 +24326,8 @@ class Prism::ParametersNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#14816 + # source://prism//lib/prism/node.rb#14401 + sig { override.returns(Symbol) } def type; end class << self @@ -21789,7 +24338,7 @@ class Prism::ParametersNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#14826 + # source://prism//lib/prism/node.rb#14411 def type; end end end @@ -21799,96 +24348,114 @@ end # (10 + 34) # ^^^^^^^^^ # -# source://prism//lib/prism/node.rb#14835 +# source://prism//lib/prism/node.rb#14420 class Prism::ParenthesesNode < ::Prism::Node - # def initialize: (Node? body, Location opening_loc, Location closing_loc, Location location) -> void + # def initialize: (Prism::node? body, Location opening_loc, Location closing_loc, Location location) -> void # # @return [ParenthesesNode] a new instance of ParenthesesNode # - # source://prism//lib/prism/node.rb#14837 + # source://prism//lib/prism/node.rb#14422 + sig do + params( + source: Prism::Source, + body: T.nilable(Prism::Node), + opening_loc: Prism::Location, + closing_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, body, opening_loc, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#14847 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#14432 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader body: Node? + # attr_reader body: Prism::node? # - # source://prism//lib/prism/node.rb#14892 + # source://prism//lib/prism/node.rb#14471 sig { returns(T.nilable(Prism::Node)) } def body; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14856 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14441 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#14913 + # source://prism//lib/prism/node.rb#14494 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#14901 + # source://prism//lib/prism/node.rb#14481 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#14868 + # source://prism//lib/prism/node.rb#14453 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#14861 + # source://prism//lib/prism/node.rb#14446 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ParenthesesNode + # def copy: (?body: Prism::node?, ?opening_loc: Location, ?closing_loc: Location, ?location: Location) -> ParenthesesNode # - # source://prism//lib/prism/node.rb#14873 - sig { params(params: T.untyped).returns(Prism::ParenthesesNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#14458 + sig do + params( + body: T.nilable(Prism::Node), + opening_loc: Prism::Location, + closing_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::ParenthesesNode) + end + def copy(body: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14856 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14441 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { body: Node?, opening_loc: Location, closing_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { body: Prism::node?, opening_loc: Location, closing_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#14887 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#14466 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#14918 + # source://prism//lib/prism/node.rb#14499 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String # - # source://prism//lib/prism/node.rb#14908 + # source://prism//lib/prism/node.rb#14489 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#14895 + # source://prism//lib/prism/node.rb#14474 sig { returns(Prism::Location) } def opening_loc; end - # source://prism//lib/prism/node.rb#14851 + # source://prism//lib/prism/node.rb#14436 def set_newline_flag(newline_marked); end # Sometimes you want to check an instance of a node against a list of @@ -21906,7 +24473,8 @@ class Prism::ParenthesesNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#14945 + # source://prism//lib/prism/node.rb#14526 + sig { override.returns(Symbol) } def type; end class << self @@ -21917,90 +24485,113 @@ class Prism::ParenthesesNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#14955 + # source://prism//lib/prism/node.rb#14536 def type; end end end # This represents an error that was encountered during parsing. # -# source://prism//lib/prism/parse_result.rb#338 +# source://prism//lib/prism/parse_result.rb#373 class Prism::ParseError # Create a new error object with the given message and location. # # @return [ParseError] a new instance of ParseError # - # source://prism//lib/prism/parse_result.rb#349 - def initialize(message, location, level); end + # source://prism//lib/prism/parse_result.rb#388 + sig { params(type: Symbol, message: String, location: Prism::Location, level: Symbol).void } + def initialize(type, message, location, level); end # Implement the hash pattern matching interface for ParseError. # - # source://prism//lib/prism/parse_result.rb#356 + # source://prism//lib/prism/parse_result.rb#396 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # Returns a string representation of this error. # - # source://prism//lib/prism/parse_result.rb#361 + # source://prism//lib/prism/parse_result.rb#401 + sig { returns(String) } def inspect; end # The level of this error. # - # source://prism//lib/prism/parse_result.rb#346 + # source://prism//lib/prism/parse_result.rb#385 def level; end # A Location object representing the location of this error in the source. # - # source://prism//lib/prism/parse_result.rb#343 - sig { returns(Prism::Location) } + # source://prism//lib/prism/parse_result.rb#382 def location; end # The message associated with this error. # - # source://prism//lib/prism/parse_result.rb#340 - sig { returns(String) } + # source://prism//lib/prism/parse_result.rb#379 def message; end + + # The type of error. This is an _internal_ symbol that is used for + # communicating with translation layers. It is not meant to be public API. + # + # source://prism//lib/prism/parse_result.rb#376 + def type; end end # This represents the result of a call to ::parse or ::parse_file. It contains # the AST, any comments that were encounters, and any errors that were # encountered. # -# source://prism//lib/prism/parse_result.rb#398 +# source://prism//lib/prism/parse_result.rb#443 class Prism::ParseResult # Create a new parse result object with the given values. # # @return [ParseResult] a new instance of ParseResult # - # source://prism//lib/prism/parse_result.rb#425 + # source://prism//lib/prism/parse_result.rb#470 + sig do + params( + value: Value, + comments: T::Array[Prism::Comment], + magic_comments: T::Array[Prism::MagicComment], + data_loc: T.nilable(Prism::Location), + errors: T::Array[Prism::ParseError], + warnings: T::Array[Prism::ParseWarning], + source: Prism::Source + ).void + end def initialize(value, comments, magic_comments, data_loc, errors, warnings, source); end # Attach the list of comments to their respective locations in the tree. # - # source://prism//lib/prism/parse_result/comments.rb#173 + # source://prism//lib/prism/parse_result/comments.rb#190 def attach_comments!; end # The list of comments that were encountered during parsing. # - # source://prism//lib/prism/parse_result.rb#405 - sig { returns(T::Array[Prism::Comment]) } + # source://prism//lib/prism/parse_result.rb#450 def comments; end # An optional location that represents the location of the __END__ marker # and the rest of the content of the file. This content is loaded into the # DATA constant when the file being parsed is the main file being executed. # - # source://prism//lib/prism/parse_result.rb#413 + # source://prism//lib/prism/parse_result.rb#458 def data_loc; end # Implement the hash pattern matching interface for ParseResult. # - # source://prism//lib/prism/parse_result.rb#436 + # source://prism//lib/prism/parse_result.rb#481 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + # Returns the encoding of the source code that was parsed. + # + # source://prism//lib/prism/parse_result.rb#486 + sig { returns(Encoding) } + def encoding; end + # The list of errors that were generated during parsing. # - # source://prism//lib/prism/parse_result.rb#416 - sig { returns(T::Array[Prism::ParseError]) } + # source://prism//lib/prism/parse_result.rb#461 def errors; end # Returns true if there were errors during parsing and false if there were @@ -22008,12 +24599,13 @@ class Prism::ParseResult # # @return [Boolean] # - # source://prism//lib/prism/parse_result.rb#448 + # source://prism//lib/prism/parse_result.rb#498 + sig { returns(T::Boolean) } def failure?; end # The list of magic comments that were encountered during parsing. # - # source://prism//lib/prism/parse_result.rb#408 + # source://prism//lib/prism/parse_result.rb#453 def magic_comments; end # Walk the tree and mark nodes that are on a new line. @@ -22023,8 +24615,7 @@ class Prism::ParseResult # A Source instance that represents the source code that was parsed. # - # source://prism//lib/prism/parse_result.rb#422 - sig { returns(Prism::Source) } + # source://prism//lib/prism/parse_result.rb#467 def source; end # Returns true if there were no errors during parsing and false if there @@ -22032,22 +24623,23 @@ class Prism::ParseResult # # @return [Boolean] # - # source://prism//lib/prism/parse_result.rb#442 + # source://prism//lib/prism/parse_result.rb#492 + sig { returns(T::Boolean) } def success?; end # The value that was generated by parsing. Normally this holds the AST, but # it can sometimes how a list of tokens or other results passed back from # the parser. # - # source://prism//lib/prism/parse_result.rb#402 - sig { returns(Prism::ProgramNode) } + # source://prism//lib/prism/parse_result.rb#447 def value; end # The list of warnings that were generated during parsing. # - # source://prism//lib/prism/parse_result.rb#419 - sig { returns(T::Array[Prism::ParseWarning]) } + # source://prism//lib/prism/parse_result.rb#464 def warnings; end + + Value = type_member end # When we've parsed the source, we have both the syntax tree and the list of @@ -22072,18 +24664,18 @@ class Prism::ParseResult::Comments # # @return [Comments] a new instance of Comments # - # source://prism//lib/prism/parse_result/comments.rb#78 + # source://prism//lib/prism/parse_result/comments.rb#86 def initialize(parse_result); end # Attach the comments to their respective locations in the tree by # mutating the parse result. # - # source://prism//lib/prism/parse_result/comments.rb#84 + # source://prism//lib/prism/parse_result/comments.rb#92 def attach!; end # The parse result that we are attaching comments to. # - # source://prism//lib/prism/parse_result/comments.rb#74 + # source://prism//lib/prism/parse_result/comments.rb#82 def parse_result; end private @@ -22091,36 +24683,39 @@ class Prism::ParseResult::Comments # Responsible for finding the nearest targets to the given comment within # the context of the given encapsulating node. # - # source://prism//lib/prism/parse_result/comments.rb#103 + # source://prism//lib/prism/parse_result/comments.rb#119 def nearest_targets(node, comment); end end # A target for attaching comments that is based on a location field on a # node. For example, the `end` token of a ClassNode. # -# source://prism//lib/prism/parse_result/comments.rb#49 +# source://prism//lib/prism/parse_result/comments.rb#53 class Prism::ParseResult::Comments::LocationTarget # @return [LocationTarget] a new instance of LocationTarget # - # source://prism//lib/prism/parse_result/comments.rb#52 + # source://prism//lib/prism/parse_result/comments.rb#56 def initialize(location); end - # source://prism//lib/prism/parse_result/comments.rb#68 - def <<(comment); end - # @return [Boolean] # - # source://prism//lib/prism/parse_result/comments.rb#64 + # source://prism//lib/prism/parse_result/comments.rb#68 def encloses?(comment); end - # source://prism//lib/prism/parse_result/comments.rb#60 + # source://prism//lib/prism/parse_result/comments.rb#64 def end_offset; end - # source://prism//lib/prism/parse_result/comments.rb#50 + # source://prism//lib/prism/parse_result/comments.rb#72 + def leading_comment(comment); end + + # source://prism//lib/prism/parse_result/comments.rb#54 def location; end - # source://prism//lib/prism/parse_result/comments.rb#56 + # source://prism//lib/prism/parse_result/comments.rb#60 def start_offset; end + + # source://prism//lib/prism/parse_result/comments.rb#76 + def trailing_comment(comment); end end # A target for attaching comments that is based on a specific node's @@ -22133,9 +24728,6 @@ class Prism::ParseResult::Comments::NodeTarget # source://prism//lib/prism/parse_result/comments.rb#25 def initialize(node); end - # source://prism//lib/prism/parse_result/comments.rb#42 - def <<(comment); end - # @return [Boolean] # # source://prism//lib/prism/parse_result/comments.rb#37 @@ -22144,11 +24736,17 @@ class Prism::ParseResult::Comments::NodeTarget # source://prism//lib/prism/parse_result/comments.rb#33 def end_offset; end + # source://prism//lib/prism/parse_result/comments.rb#42 + def leading_comment(comment); end + # source://prism//lib/prism/parse_result/comments.rb#23 def node; end # source://prism//lib/prism/parse_result/comments.rb#29 def start_offset; end + + # source://prism//lib/prism/parse_result/comments.rb#46 + def trailing_comment(comment); end end # The :line tracepoint event gets fired whenever the Ruby VM encounters an @@ -22204,41 +24802,48 @@ end # This represents a warning that was encountered during parsing. # -# source://prism//lib/prism/parse_result.rb#367 +# source://prism//lib/prism/parse_result.rb#407 class Prism::ParseWarning # Create a new warning object with the given message and location. # # @return [ParseWarning] a new instance of ParseWarning # - # source://prism//lib/prism/parse_result.rb#378 - def initialize(message, location, level); end + # source://prism//lib/prism/parse_result.rb#422 + sig { params(type: Symbol, message: String, location: Prism::Location, level: Symbol).void } + def initialize(type, message, location, level); end # Implement the hash pattern matching interface for ParseWarning. # - # source://prism//lib/prism/parse_result.rb#385 + # source://prism//lib/prism/parse_result.rb#430 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # Returns a string representation of this warning. # - # source://prism//lib/prism/parse_result.rb#390 + # source://prism//lib/prism/parse_result.rb#435 + sig { returns(String) } def inspect; end # The level of this warning. # - # source://prism//lib/prism/parse_result.rb#375 + # source://prism//lib/prism/parse_result.rb#419 def level; end # A Location object representing the location of this warning in the source. # - # source://prism//lib/prism/parse_result.rb#372 - sig { returns(Prism::Location) } + # source://prism//lib/prism/parse_result.rb#416 def location; end # The message associated with this warning. # - # source://prism//lib/prism/parse_result.rb#369 - sig { returns(String) } + # source://prism//lib/prism/parse_result.rb#413 def message; end + + # The type of warning. This is an _internal_ symbol that is used for + # communicating with translation layers. It is not meant to be public API. + # + # source://prism//lib/prism/parse_result.rb#410 + def type; end end # A pattern is an object that wraps a Ruby pattern matching expression. The @@ -22288,6 +24893,8 @@ class Prism::Pattern # Compile the query into a callable object that can be used to match against # nodes. # + # @raise [CompilationError] + # # source://prism//lib/prism/pattern.rb#70 def compile; end @@ -22301,7 +24908,7 @@ class Prism::Pattern # matches the pattern. If no block is given, an enumerator will be returned # that will yield each node that matches the pattern. # - # source://prism//lib/prism/pattern.rb#79 + # source://prism//lib/prism/pattern.rb#86 def scan(root); end private @@ -22309,75 +24916,75 @@ class Prism::Pattern # Shortcut for combining two procs into one that returns true if both return # true. # - # source://prism//lib/prism/pattern.rb#95 + # source://prism//lib/prism/pattern.rb#102 def combine_and(left, right); end # Shortcut for combining two procs into one that returns true if either # returns true. # - # source://prism//lib/prism/pattern.rb#101 + # source://prism//lib/prism/pattern.rb#108 def combine_or(left, right); end # in foo | bar # - # source://prism//lib/prism/pattern.rb#136 + # source://prism//lib/prism/pattern.rb#143 def compile_alternation_pattern_node(node); end # in [foo, bar, baz] # - # source://prism//lib/prism/pattern.rb#111 + # source://prism//lib/prism/pattern.rb#118 def compile_array_pattern_node(node); end # in Prism::ConstantReadNode # - # source://prism//lib/prism/pattern.rb#141 + # source://prism//lib/prism/pattern.rb#148 def compile_constant_path_node(node); end # in ConstantReadNode # in String # - # source://prism//lib/prism/pattern.rb#153 + # source://prism//lib/prism/pattern.rb#160 def compile_constant_read_node(node); end # Raise an error because the given node is not supported. # # @raise [CompilationError] # - # source://prism//lib/prism/pattern.rb#106 + # source://prism//lib/prism/pattern.rb#113 def compile_error(node); end # in InstanceVariableReadNode[name: Symbol] # in { name: Symbol } # - # source://prism//lib/prism/pattern.rb#171 + # source://prism//lib/prism/pattern.rb#178 def compile_hash_pattern_node(node); end # in nil # - # source://prism//lib/prism/pattern.rb#196 + # source://prism//lib/prism/pattern.rb#208 def compile_nil_node(node); end # Compile any kind of node. Dispatch out to the individual compilation # methods based on the type of node. # - # source://prism//lib/prism/pattern.rb#225 + # source://prism//lib/prism/pattern.rb#237 def compile_node(node); end # in /foo/ # - # source://prism//lib/prism/pattern.rb#201 + # source://prism//lib/prism/pattern.rb#213 def compile_regular_expression_node(node); end # in "" # in "foo" # - # source://prism//lib/prism/pattern.rb#209 + # source://prism//lib/prism/pattern.rb#221 def compile_string_node(node); end # in :+ # in :foo # - # source://prism//lib/prism/pattern.rb#217 + # source://prism//lib/prism/pattern.rb#229 def compile_symbol_node(node); end end @@ -22400,104 +25007,124 @@ end # foo in ^(bar) # ^^^^^^ # -# source://prism//lib/prism/node.rb#14964 +# source://prism//lib/prism/node.rb#14545 class Prism::PinnedExpressionNode < ::Prism::Node - # def initialize: (Node expression, Location operator_loc, Location lparen_loc, Location rparen_loc, Location location) -> void + # def initialize: (Prism::node expression, Location operator_loc, Location lparen_loc, Location rparen_loc, Location location) -> void # # @return [PinnedExpressionNode] a new instance of PinnedExpressionNode # - # source://prism//lib/prism/node.rb#14966 + # source://prism//lib/prism/node.rb#14547 + sig do + params( + source: Prism::Source, + expression: Prism::Node, + operator_loc: Prism::Location, + lparen_loc: Prism::Location, + rparen_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, expression, operator_loc, lparen_loc, rparen_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#14977 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#14558 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14982 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14563 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#14992 + # source://prism//lib/prism/node.rb#14573 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#14987 + # source://prism//lib/prism/node.rb#14568 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> PinnedExpressionNode + # def copy: (?expression: Prism::node, ?operator_loc: Location, ?lparen_loc: Location, ?rparen_loc: Location, ?location: Location) -> PinnedExpressionNode # - # source://prism//lib/prism/node.rb#14997 - sig { params(params: T.untyped).returns(Prism::PinnedExpressionNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#14578 + sig do + params( + expression: Prism::Node, + operator_loc: Prism::Location, + lparen_loc: Prism::Location, + rparen_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::PinnedExpressionNode) + end + def copy(expression: T.unsafe(nil), operator_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#14982 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14563 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { expression: Node, operator_loc: Location, lparen_loc: Location, rparen_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { expression: Prism::node, operator_loc: Location, lparen_loc: Location, rparen_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#15012 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#14586 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # attr_reader expression: Node + # attr_reader expression: Prism::node # - # source://prism//lib/prism/node.rb#15017 + # source://prism//lib/prism/node.rb#14591 sig { returns(Prism::Node) } def expression; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#15054 + # source://prism//lib/prism/node.rb#14631 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def lparen: () -> String # - # source://prism//lib/prism/node.rb#15044 + # source://prism//lib/prism/node.rb#14621 sig { returns(String) } def lparen; end # attr_reader lparen_loc: Location # - # source://prism//lib/prism/node.rb#15026 + # source://prism//lib/prism/node.rb#14601 sig { returns(Prism::Location) } def lparen_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#15039 + # source://prism//lib/prism/node.rb#14616 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#15020 + # source://prism//lib/prism/node.rb#14594 sig { returns(Prism::Location) } def operator_loc; end # def rparen: () -> String # - # source://prism//lib/prism/node.rb#15049 + # source://prism//lib/prism/node.rb#14626 sig { returns(String) } def rparen; end # attr_reader rparen_loc: Location # - # source://prism//lib/prism/node.rb#15032 + # source://prism//lib/prism/node.rb#14608 sig { returns(Prism::Location) } def rparen_loc; end @@ -22516,7 +25143,8 @@ class Prism::PinnedExpressionNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#15078 + # source://prism//lib/prism/node.rb#14655 + sig { override.returns(Symbol) } def type; end class << self @@ -22527,7 +25155,7 @@ class Prism::PinnedExpressionNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#15088 + # source://prism//lib/prism/node.rb#14665 def type; end end end @@ -22537,74 +25165,90 @@ end # foo in ^bar # ^^^^ # -# source://prism//lib/prism/node.rb#15097 +# source://prism//lib/prism/node.rb#14674 class Prism::PinnedVariableNode < ::Prism::Node - # def initialize: (Node variable, Location operator_loc, Location location) -> void + # def initialize: (Prism::node variable, Location operator_loc, Location location) -> void # # @return [PinnedVariableNode] a new instance of PinnedVariableNode # - # source://prism//lib/prism/node.rb#15099 + # source://prism//lib/prism/node.rb#14676 + sig do + params( + source: Prism::Source, + variable: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, variable, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#15108 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#14685 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15113 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14690 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#15123 + # source://prism//lib/prism/node.rb#14700 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#15118 + # source://prism//lib/prism/node.rb#14695 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> PinnedVariableNode + # def copy: (?variable: Prism::node, ?operator_loc: Location, ?location: Location) -> PinnedVariableNode # - # source://prism//lib/prism/node.rb#15128 - sig { params(params: T.untyped).returns(Prism::PinnedVariableNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#14705 + sig do + params( + variable: Prism::Node, + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::PinnedVariableNode) + end + def copy(variable: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15113 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14690 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { variable: Node, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { variable: Prism::node, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#15141 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#14713 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#15161 + # source://prism//lib/prism/node.rb#14734 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#15156 + # source://prism//lib/prism/node.rb#14729 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#15149 + # source://prism//lib/prism/node.rb#14721 sig { returns(Prism::Location) } def operator_loc; end @@ -22623,12 +25267,13 @@ class Prism::PinnedVariableNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#15183 + # source://prism//lib/prism/node.rb#14756 + sig { override.returns(Symbol) } def type; end - # attr_reader variable: Node + # attr_reader variable: Prism::node # - # source://prism//lib/prism/node.rb#15146 + # source://prism//lib/prism/node.rb#14718 sig { returns(Prism::Node) } def variable; end @@ -22640,7 +25285,7 @@ class Prism::PinnedVariableNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#15193 + # source://prism//lib/prism/node.rb#14766 def type; end end end @@ -22650,104 +25295,124 @@ end # END { foo } # ^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#15202 +# source://prism//lib/prism/node.rb#14775 class Prism::PostExecutionNode < ::Prism::Node # def initialize: (StatementsNode? statements, Location keyword_loc, Location opening_loc, Location closing_loc, Location location) -> void # # @return [PostExecutionNode] a new instance of PostExecutionNode # - # source://prism//lib/prism/node.rb#15204 + # source://prism//lib/prism/node.rb#14777 + sig do + params( + source: Prism::Source, + statements: T.nilable(Prism::StatementsNode), + keyword_loc: Prism::Location, + opening_loc: Prism::Location, + closing_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, statements, keyword_loc, opening_loc, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#15215 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#14788 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15220 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14793 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#15289 + # source://prism//lib/prism/node.rb#14858 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#15272 + # source://prism//lib/prism/node.rb#14840 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#15232 + # source://prism//lib/prism/node.rb#14805 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#15225 + # source://prism//lib/prism/node.rb#14798 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> PostExecutionNode + # def copy: (?statements: StatementsNode?, ?keyword_loc: Location, ?opening_loc: Location, ?closing_loc: Location, ?location: Location) -> PostExecutionNode # - # source://prism//lib/prism/node.rb#15237 - sig { params(params: T.untyped).returns(Prism::PostExecutionNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#14810 + sig do + params( + statements: T.nilable(Prism::StatementsNode), + keyword_loc: Prism::Location, + opening_loc: Prism::Location, + closing_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::PostExecutionNode) + end + def copy(statements: T.unsafe(nil), keyword_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15220 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14793 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { statements: StatementsNode?, keyword_loc: Location, opening_loc: Location, closing_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#15252 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#14818 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#15294 + # source://prism//lib/prism/node.rb#14863 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#15279 + # source://prism//lib/prism/node.rb#14848 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#15260 + # source://prism//lib/prism/node.rb#14826 sig { returns(Prism::Location) } def keyword_loc; end # def opening: () -> String # - # source://prism//lib/prism/node.rb#15284 + # source://prism//lib/prism/node.rb#14853 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#15266 + # source://prism//lib/prism/node.rb#14833 sig { returns(Prism::Location) } def opening_loc; end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#15257 + # source://prism//lib/prism/node.rb#14823 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end @@ -22766,7 +25431,8 @@ class Prism::PostExecutionNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#15322 + # source://prism//lib/prism/node.rb#14891 + sig { override.returns(Symbol) } def type; end class << self @@ -22777,7 +25443,7 @@ class Prism::PostExecutionNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#15332 + # source://prism//lib/prism/node.rb#14901 def type; end end end @@ -22787,104 +25453,124 @@ end # BEGIN { foo } # ^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#15341 +# source://prism//lib/prism/node.rb#14910 class Prism::PreExecutionNode < ::Prism::Node # def initialize: (StatementsNode? statements, Location keyword_loc, Location opening_loc, Location closing_loc, Location location) -> void # # @return [PreExecutionNode] a new instance of PreExecutionNode # - # source://prism//lib/prism/node.rb#15343 + # source://prism//lib/prism/node.rb#14912 + sig do + params( + source: Prism::Source, + statements: T.nilable(Prism::StatementsNode), + keyword_loc: Prism::Location, + opening_loc: Prism::Location, + closing_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, statements, keyword_loc, opening_loc, closing_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#15354 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#14923 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15359 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14928 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#15428 + # source://prism//lib/prism/node.rb#14993 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#15411 + # source://prism//lib/prism/node.rb#14975 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#15371 + # source://prism//lib/prism/node.rb#14940 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#15364 + # source://prism//lib/prism/node.rb#14933 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> PreExecutionNode + # def copy: (?statements: StatementsNode?, ?keyword_loc: Location, ?opening_loc: Location, ?closing_loc: Location, ?location: Location) -> PreExecutionNode # - # source://prism//lib/prism/node.rb#15376 - sig { params(params: T.untyped).returns(Prism::PreExecutionNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#14945 + sig do + params( + statements: T.nilable(Prism::StatementsNode), + keyword_loc: Prism::Location, + opening_loc: Prism::Location, + closing_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::PreExecutionNode) + end + def copy(statements: T.unsafe(nil), keyword_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15359 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#14928 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { statements: StatementsNode?, keyword_loc: Location, opening_loc: Location, closing_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#15391 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#14953 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#15433 + # source://prism//lib/prism/node.rb#14998 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#15418 + # source://prism//lib/prism/node.rb#14983 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#15399 + # source://prism//lib/prism/node.rb#14961 sig { returns(Prism::Location) } def keyword_loc; end # def opening: () -> String # - # source://prism//lib/prism/node.rb#15423 + # source://prism//lib/prism/node.rb#14988 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#15405 + # source://prism//lib/prism/node.rb#14968 sig { returns(Prism::Location) } def opening_loc; end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#15396 + # source://prism//lib/prism/node.rb#14958 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end @@ -22903,7 +25589,8 @@ class Prism::PreExecutionNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#15461 + # source://prism//lib/prism/node.rb#15026 + sig { override.returns(Symbol) } def type; end class << self @@ -22914,81 +25601,97 @@ class Prism::PreExecutionNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#15471 + # source://prism//lib/prism/node.rb#15036 def type; end end end # The top level node of any parse tree. # -# source://prism//lib/prism/node.rb#15477 +# source://prism//lib/prism/node.rb#15042 class Prism::ProgramNode < ::Prism::Node # def initialize: (Array[Symbol] locals, StatementsNode statements, Location location) -> void # # @return [ProgramNode] a new instance of ProgramNode # - # source://prism//lib/prism/node.rb#15479 - def initialize(source, locals, statements, location); end - + # source://prism//lib/prism/node.rb#15044 + sig do + params( + source: Prism::Source, + locals: T::Array[Symbol], + statements: Prism::StatementsNode, + location: Prism::Location + ).void + end + def initialize(source, locals, statements, location); end + # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#15488 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#15053 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15493 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15058 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#15503 + # source://prism//lib/prism/node.rb#15068 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#15498 + # source://prism//lib/prism/node.rb#15063 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ProgramNode + # def copy: (?locals: Array[Symbol], ?statements: StatementsNode, ?location: Location) -> ProgramNode # - # source://prism//lib/prism/node.rb#15508 - sig { params(params: T.untyped).returns(Prism::ProgramNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#15073 + sig do + params( + locals: T::Array[Symbol], + statements: Prism::StatementsNode, + location: Prism::Location + ).returns(Prism::ProgramNode) + end + def copy(locals: T.unsafe(nil), statements: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15493 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15058 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], statements: StatementsNode, location: Location } # - # source://prism//lib/prism/node.rb#15521 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#15081 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#15533 + # source://prism//lib/prism/node.rb#15093 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader locals: Array[Symbol] # - # source://prism//lib/prism/node.rb#15526 + # source://prism//lib/prism/node.rb#15086 sig { returns(T::Array[Symbol]) } def locals; end # attr_reader statements: StatementsNode # - # source://prism//lib/prism/node.rb#15529 + # source://prism//lib/prism/node.rb#15089 sig { returns(Prism::StatementsNode) } def statements; end @@ -23007,7 +25710,8 @@ class Prism::ProgramNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#15555 + # source://prism//lib/prism/node.rb#15115 + sig { override.returns(Symbol) } def type; end class << self @@ -23018,19 +25722,19 @@ class Prism::ProgramNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#15565 + # source://prism//lib/prism/node.rb#15125 def type; end end end # Flags for range and flip-flop nodes. # -# source://prism//lib/prism/node.rb#19310 +# source://prism//lib/prism/node.rb#18908 module Prism::RangeFlags; end # ... operator # -# source://prism//lib/prism/node.rb#19312 +# source://prism//lib/prism/node.rb#18910 Prism::RangeFlags::EXCLUDE_END = T.let(T.unsafe(nil), Integer) # Represents the use of the `..` or `...` operators. @@ -23041,71 +25745,91 @@ Prism::RangeFlags::EXCLUDE_END = T.let(T.unsafe(nil), Integer) # c if a =~ /left/ ... b =~ /right/ # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#15577 +# source://prism//lib/prism/node.rb#15137 class Prism::RangeNode < ::Prism::Node - # def initialize: (Integer flags, Node? left, Node? right, Location operator_loc, Location location) -> void + # def initialize: (Integer flags, Prism::node? left, Prism::node? right, Location operator_loc, Location location) -> void # # @return [RangeNode] a new instance of RangeNode # - # source://prism//lib/prism/node.rb#15579 + # source://prism//lib/prism/node.rb#15139 + sig do + params( + source: Prism::Source, + flags: Integer, + left: T.nilable(Prism::Node), + right: T.nilable(Prism::Node), + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, flags, left, right, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#15590 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#15150 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15595 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15155 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#15608 + # source://prism//lib/prism/node.rb#15168 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#15600 + # source://prism//lib/prism/node.rb#15160 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> RangeNode + # def copy: (?flags: Integer, ?left: Prism::node?, ?right: Prism::node?, ?operator_loc: Location, ?location: Location) -> RangeNode # - # source://prism//lib/prism/node.rb#15613 - sig { params(params: T.untyped).returns(Prism::RangeNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#15173 + sig do + params( + flags: Integer, + left: T.nilable(Prism::Node), + right: T.nilable(Prism::Node), + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::RangeNode) + end + def copy(flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15595 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15155 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, left: Node?, right: Node?, operator_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, left: Prism::node?, right: Prism::node?, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#15628 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#15181 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def exclude_end?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#15663 + # source://prism//lib/prism/node.rb#15217 sig { returns(T::Boolean) } def exclude_end?; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#15673 + # source://prism//lib/prism/node.rb#15227 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # The left-hand side of the range, if present. It can be either `nil` or any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression). @@ -23116,19 +25840,19 @@ class Prism::RangeNode < ::Prism::Node # hello...goodbye # ^^^^^ # - # source://prism//lib/prism/node.rb#15643 + # source://prism//lib/prism/node.rb#15196 sig { returns(T.nilable(Prism::Node)) } def left; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#15668 + # source://prism//lib/prism/node.rb#15222 sig { returns(String) } def operator; end # The location of the `..` or `...` operator. # - # source://prism//lib/prism/node.rb#15656 + # source://prism//lib/prism/node.rb#15209 sig { returns(Prism::Location) } def operator_loc; end @@ -23141,7 +25865,7 @@ class Prism::RangeNode < ::Prism::Node # ^^^ # If neither right-hand or left-hand side was included, this will be a MissingNode. # - # source://prism//lib/prism/node.rb#15653 + # source://prism//lib/prism/node.rb#15206 sig { returns(T.nilable(Prism::Node)) } def right; end @@ -23160,14 +25884,15 @@ class Prism::RangeNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#15707 + # source://prism//lib/prism/node.rb#15261 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#15633 + # source://prism//lib/prism/node.rb#15186 sig { returns(Integer) } def flags; end @@ -23179,7 +25904,7 @@ class Prism::RangeNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#15717 + # source://prism//lib/prism/node.rb#15271 def type; end end end @@ -23189,68 +25914,71 @@ end # 1.0r # ^^^^ # -# source://prism//lib/prism/node.rb#15726 +# source://prism//lib/prism/node.rb#15280 class Prism::RationalNode < ::Prism::Node - # def initialize: (Node numeric, Location location) -> void + # def initialize: (Prism::node numeric, Location location) -> void # # @return [RationalNode] a new instance of RationalNode # - # source://prism//lib/prism/node.rb#15728 + # source://prism//lib/prism/node.rb#15282 + sig { params(source: Prism::Source, numeric: Prism::Node, location: Prism::Location).void } def initialize(source, numeric, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#15736 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#15290 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15741 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15295 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#15751 + # source://prism//lib/prism/node.rb#15305 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#15746 + # source://prism//lib/prism/node.rb#15300 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> RationalNode + # def copy: (?numeric: Prism::node, ?location: Location) -> RationalNode # - # source://prism//lib/prism/node.rb#15756 - sig { params(params: T.untyped).returns(Prism::RationalNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#15310 + sig { params(numeric: Prism::Node, location: Prism::Location).returns(Prism::RationalNode) } + def copy(numeric: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15741 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15295 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { numeric: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { numeric: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#15768 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#15318 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#15777 + # source://prism//lib/prism/node.rb#15327 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end - # attr_reader numeric: Node + # attr_reader numeric: Prism::node # - # source://prism//lib/prism/node.rb#15773 + # source://prism//lib/prism/node.rb#15323 sig { returns(Prism::Node) } def numeric; end @@ -23269,12 +25997,14 @@ class Prism::RationalNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#15798 + # source://prism//lib/prism/node.rb#15348 + sig { override.returns(Symbol) } def type; end # Returns the value of the node as a Ruby Rational. # - # source://prism//lib/prism/node_ext.rb#83 + # source://prism//lib/prism/node_ext.rb#94 + sig { returns(Rational) } def value; end class << self @@ -23285,7 +26015,7 @@ class Prism::RationalNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#15808 + # source://prism//lib/prism/node.rb#15358 def type; end end end @@ -23295,63 +26025,66 @@ end # redo # ^^^^ # -# source://prism//lib/prism/node.rb#15817 +# source://prism//lib/prism/node.rb#15367 class Prism::RedoNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [RedoNode] a new instance of RedoNode # - # source://prism//lib/prism/node.rb#15819 + # source://prism//lib/prism/node.rb#15369 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#15826 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#15376 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15831 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15381 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#15841 + # source://prism//lib/prism/node.rb#15391 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#15836 + # source://prism//lib/prism/node.rb#15386 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> RedoNode + # def copy: (?location: Location) -> RedoNode # - # source://prism//lib/prism/node.rb#15846 - sig { params(params: T.untyped).returns(Prism::RedoNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#15396 + sig { params(location: Prism::Location).returns(Prism::RedoNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15831 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15381 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#15857 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#15404 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#15863 + # source://prism//lib/prism/node.rb#15410 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -23369,7 +26102,8 @@ class Prism::RedoNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#15882 + # source://prism//lib/prism/node.rb#15429 + sig { override.returns(Symbol) } def type; end class << self @@ -23380,69 +26114,209 @@ class Prism::RedoNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#15892 + # source://prism//lib/prism/node.rb#15439 def type; end end end +# The Reflection module provides the ability to reflect on the structure of +# the syntax tree itself, as opposed to looking at a single syntax tree. This +# is useful in metaprogramming contexts. +# +# source://prism//lib/prism/reflection.rb#13 +module Prism::Reflection + class << self + # Returns the fields for the given node. + # + # source://prism//lib/prism/reflection.rb#114 + sig { params(node: T.class_of(Prism::Node)).returns(T::Array[Prism::Reflection::Field]) } + def fields_for(node); end + end +end + +# A constant field represents a constant value on a node. Effectively, it +# represents an identifier found within the source. It resolves to a symbol +# in Ruby. +# +# source://prism//lib/prism/reflection.rb#45 +class Prism::Reflection::ConstantField < ::Prism::Reflection::Field; end + +# A constant list field represents a list of constant values on a node. It +# resolves to an array of symbols in Ruby. +# +# source://prism//lib/prism/reflection.rb#55 +class Prism::Reflection::ConstantListField < ::Prism::Reflection::Field; end + +# A double field represents a double-precision floating point value. It is +# used exclusively to represent the value of a floating point literal. It +# resolves to a Float in Ruby. +# +# source://prism//lib/prism/reflection.rb#110 +class Prism::Reflection::DoubleField < ::Prism::Reflection::Field; end + +# A field represents a single piece of data on a node. It is the base class +# for all other field types. +# +# source://prism//lib/prism/reflection.rb#16 +class Prism::Reflection::Field + # Initializes the field with the given name. + # + # @return [Field] a new instance of Field + # + # source://prism//lib/prism/reflection.rb#21 + sig { params(name: Symbol).void } + def initialize(name); end + + # The name of the field. + # + # source://prism//lib/prism/reflection.rb#18 + def name; end +end + +# A flags field represents a bitset of flags on a node. It resolves to an +# integer in Ruby. Note that the flags cannot be accessed directly on the +# node because the integer is kept private. Instead, the various flags in +# the bitset should be accessed through their query methods. +# +# source://prism//lib/prism/reflection.rb#90 +class Prism::Reflection::FlagsField < ::Prism::Reflection::Field + # Initializes the flags field with the given name and flags. + # + # @return [FlagsField] a new instance of FlagsField + # + # source://prism//lib/prism/reflection.rb#95 + sig { params(name: Symbol, flags: T::Array[Symbol]).void } + def initialize(name, flags); end + + # The names of the flags in the bitset. + # + # source://prism//lib/prism/reflection.rb#92 + def flags; end +end + +# An integer field represents an arbitrarily-sized integer value. It is used +# exclusively to represent the value of an integer literal. It resolves to +# an Integer in Ruby. +# +# source://prism//lib/prism/reflection.rb#104 +class Prism::Reflection::IntegerField < ::Prism::Reflection::Field; end + +# A location field represents the location of some part of the node in the +# source code. For example, the location of a keyword or an operator. It +# resolves to a Prism::Location in Ruby. +# +# source://prism//lib/prism/reflection.rb#67 +class Prism::Reflection::LocationField < ::Prism::Reflection::Field; end + +# A node field represents a single child node in the syntax tree. It +# resolves to a Prism::Node in Ruby. +# +# source://prism//lib/prism/reflection.rb#28 +class Prism::Reflection::NodeField < ::Prism::Reflection::Field; end + +# A node list field represents a list of child nodes in the syntax tree. It +# resolves to an array of Prism::Node instances in Ruby. +# +# source://prism//lib/prism/reflection.rb#39 +class Prism::Reflection::NodeListField < ::Prism::Reflection::Field; end + +# An optional constant field represents a constant value on a node that may +# or may not be present. It resolves to either a symbol or nil in Ruby. +# +# source://prism//lib/prism/reflection.rb#50 +class Prism::Reflection::OptionalConstantField < ::Prism::Reflection::Field; end + +# An optional location field represents the location of some part of the +# node in the source code that may or may not be present. It resolves to +# either a Prism::Location or nil in Ruby. +# +# source://prism//lib/prism/reflection.rb#73 +class Prism::Reflection::OptionalLocationField < ::Prism::Reflection::Field; end + +# An optional node field represents a single child node in the syntax tree +# that may or may not be present. It resolves to either a Prism::Node or nil +# in Ruby. +# +# source://prism//lib/prism/reflection.rb#34 +class Prism::Reflection::OptionalNodeField < ::Prism::Reflection::Field; end + +# A string field represents a string value on a node. It almost always +# represents the unescaped value of a string-like literal. It resolves to a +# string in Ruby. +# +# source://prism//lib/prism/reflection.rb#61 +class Prism::Reflection::StringField < ::Prism::Reflection::Field; end + +# A uint32 field represents an unsigned 32-bit integer value on a node. It +# resolves to an Integer in Ruby. +# +# source://prism//lib/prism/reflection.rb#83 +class Prism::Reflection::UInt32Field < ::Prism::Reflection::Field; end + +# A uint8 field represents an unsigned 8-bit integer value on a node. It +# resolves to an Integer in Ruby. +# +# source://prism//lib/prism/reflection.rb#78 +class Prism::Reflection::UInt8Field < ::Prism::Reflection::Field; end + # Flags for regular expression and match last line nodes. # -# source://prism//lib/prism/node.rb#19316 +# source://prism//lib/prism/node.rb#18914 module Prism::RegularExpressionFlags; end # n - forces the ASCII-8BIT encoding # -# source://prism//lib/prism/node.rb#19333 +# source://prism//lib/prism/node.rb#18931 Prism::RegularExpressionFlags::ASCII_8BIT = T.let(T.unsafe(nil), Integer) # e - forces the EUC-JP encoding # -# source://prism//lib/prism/node.rb#19330 +# source://prism//lib/prism/node.rb#18928 Prism::RegularExpressionFlags::EUC_JP = T.let(T.unsafe(nil), Integer) # x - ignores whitespace and allows comments in regular expressions # -# source://prism//lib/prism/node.rb#19321 +# source://prism//lib/prism/node.rb#18919 Prism::RegularExpressionFlags::EXTENDED = T.let(T.unsafe(nil), Integer) # internal bytes forced the encoding to binary # -# source://prism//lib/prism/node.rb#19345 +# source://prism//lib/prism/node.rb#18943 Prism::RegularExpressionFlags::FORCED_BINARY_ENCODING = T.let(T.unsafe(nil), Integer) # internal bytes forced the encoding to US-ASCII # -# source://prism//lib/prism/node.rb#19348 +# source://prism//lib/prism/node.rb#18946 Prism::RegularExpressionFlags::FORCED_US_ASCII_ENCODING = T.let(T.unsafe(nil), Integer) # internal bytes forced the encoding to UTF-8 # -# source://prism//lib/prism/node.rb#19342 +# source://prism//lib/prism/node.rb#18940 Prism::RegularExpressionFlags::FORCED_UTF8_ENCODING = T.let(T.unsafe(nil), Integer) # i - ignores the case of characters when matching # -# source://prism//lib/prism/node.rb#19318 +# source://prism//lib/prism/node.rb#18916 Prism::RegularExpressionFlags::IGNORE_CASE = T.let(T.unsafe(nil), Integer) # m - allows $ to match the end of lines within strings # -# source://prism//lib/prism/node.rb#19324 +# source://prism//lib/prism/node.rb#18922 Prism::RegularExpressionFlags::MULTI_LINE = T.let(T.unsafe(nil), Integer) # o - only interpolates values into the regular expression once # -# source://prism//lib/prism/node.rb#19327 +# source://prism//lib/prism/node.rb#18925 Prism::RegularExpressionFlags::ONCE = T.let(T.unsafe(nil), Integer) # u - forces the UTF-8 encoding # -# source://prism//lib/prism/node.rb#19339 +# source://prism//lib/prism/node.rb#18937 Prism::RegularExpressionFlags::UTF_8 = T.let(T.unsafe(nil), Integer) # s - forces the Windows-31J encoding # -# source://prism//lib/prism/node.rb#19336 +# source://prism//lib/prism/node.rb#18934 Prism::RegularExpressionFlags::WINDOWS_31J = T.let(T.unsafe(nil), Integer) # Represents a regular expression literal with no interpolation. @@ -23450,7 +26324,7 @@ Prism::RegularExpressionFlags::WINDOWS_31J = T.let(T.unsafe(nil), Integer) # /foo/i # ^^^^^^ # -# source://prism//lib/prism/node.rb#15901 +# source://prism//lib/prism/node.rb#15448 class Prism::RegularExpressionNode < ::Prism::Node include ::Prism::RegularExpressionOptions @@ -23458,91 +26332,109 @@ class Prism::RegularExpressionNode < ::Prism::Node # # @return [RegularExpressionNode] a new instance of RegularExpressionNode # - # source://prism//lib/prism/node.rb#15903 + # source://prism//lib/prism/node.rb#15450 + sig do + params( + source: Prism::Source, + flags: Integer, + opening_loc: Prism::Location, + content_loc: Prism::Location, + closing_loc: Prism::Location, + unescaped: String, + location: Prism::Location + ).void + end def initialize(source, flags, opening_loc, content_loc, closing_loc, unescaped, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#15915 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#15462 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def ascii_8bit?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#16007 + # source://prism//lib/prism/node.rb#15549 sig { returns(T::Boolean) } def ascii_8bit?; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15920 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15467 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#16047 + # source://prism//lib/prism/node.rb#15589 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#15972 + # source://prism//lib/prism/node.rb#15513 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#15930 + # source://prism//lib/prism/node.rb#15477 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#15925 + # source://prism//lib/prism/node.rb#15472 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end # def content: () -> String # - # source://prism//lib/prism/node.rb#16042 + # source://prism//lib/prism/node.rb#15584 sig { returns(String) } def content; end # attr_reader content_loc: Location # - # source://prism//lib/prism/node.rb#15966 + # source://prism//lib/prism/node.rb#15506 sig { returns(Prism::Location) } def content_loc; end - # def copy: (**params) -> RegularExpressionNode + # def copy: (?flags: Integer, ?opening_loc: Location, ?content_loc: Location, ?closing_loc: Location, ?unescaped: String, ?location: Location) -> RegularExpressionNode # - # source://prism//lib/prism/node.rb#15935 - sig { params(params: T.untyped).returns(Prism::RegularExpressionNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#15482 + sig do + params( + flags: Integer, + opening_loc: Prism::Location, + content_loc: Prism::Location, + closing_loc: Prism::Location, + unescaped: String, + location: Prism::Location + ).returns(Prism::RegularExpressionNode) + end + def copy(flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#15920 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15467 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, opening_loc: Location, content_loc: Location, closing_loc: Location, unescaped: String, location: Location } # - # source://prism//lib/prism/node.rb#15951 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#15490 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def euc_jp?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#16002 + # source://prism//lib/prism/node.rb#15544 sig { returns(T::Boolean) } def euc_jp?; end @@ -23550,15 +26442,18 @@ class Prism::RegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#15987 + # source://prism//lib/prism/node.rb#15529 sig { returns(T::Boolean) } def extended?; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def forced_binary_encoding?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#16027 + # source://prism//lib/prism/node.rb#15569 sig { returns(T::Boolean) } def forced_binary_encoding?; end @@ -23566,7 +26461,7 @@ class Prism::RegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#16032 + # source://prism//lib/prism/node.rb#15574 sig { returns(T::Boolean) } def forced_us_ascii_encoding?; end @@ -23574,7 +26469,7 @@ class Prism::RegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#16022 + # source://prism//lib/prism/node.rb#15564 sig { returns(T::Boolean) } def forced_utf8_encoding?; end @@ -23582,20 +26477,21 @@ class Prism::RegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#15982 + # source://prism//lib/prism/node.rb#15524 sig { returns(T::Boolean) } def ignore_case?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#16052 + # source://prism//lib/prism/node.rb#15594 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def multi_line?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#15992 + # source://prism//lib/prism/node.rb#15534 sig { returns(T::Boolean) } def multi_line?; end @@ -23603,22 +26499,25 @@ class Prism::RegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#15997 + # source://prism//lib/prism/node.rb#15539 sig { returns(T::Boolean) } def once?; end # def opening: () -> String # - # source://prism//lib/prism/node.rb#16037 + # source://prism//lib/prism/node.rb#15579 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#15960 + # source://prism//lib/prism/node.rb#15499 sig { returns(Prism::Location) } def opening_loc; end + sig { returns(Integer) } + def options; end + # Sometimes you want to check an instance of a node against a list of # classes to see what kind of behavior to perform. Usually this is done by # calling `[cls1, cls2].include?(node.class)` or putting the node into a @@ -23634,12 +26533,13 @@ class Prism::RegularExpressionNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#16077 + # source://prism//lib/prism/node.rb#15619 + sig { override.returns(Symbol) } def type; end # attr_reader unescaped: String # - # source://prism//lib/prism/node.rb#15978 + # source://prism//lib/prism/node.rb#15520 sig { returns(String) } def unescaped; end @@ -23647,7 +26547,7 @@ class Prism::RegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#16017 + # source://prism//lib/prism/node.rb#15559 sig { returns(T::Boolean) } def utf_8?; end @@ -23655,7 +26555,7 @@ class Prism::RegularExpressionNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#16012 + # source://prism//lib/prism/node.rb#15554 sig { returns(T::Boolean) } def windows_31j?; end @@ -23663,7 +26563,7 @@ class Prism::RegularExpressionNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#15956 + # source://prism//lib/prism/node.rb#15495 sig { returns(Integer) } def flags; end @@ -23675,7 +26575,7 @@ class Prism::RegularExpressionNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#16087 + # source://prism//lib/prism/node.rb#15629 def type; end end end @@ -23695,74 +26595,92 @@ end # ^^ # end # -# source://prism//lib/prism/node.rb#16097 +# source://prism//lib/prism/node.rb#15639 class Prism::RequiredKeywordParameterNode < ::Prism::Node # def initialize: (Integer flags, Symbol name, Location name_loc, Location location) -> void # # @return [RequiredKeywordParameterNode] a new instance of RequiredKeywordParameterNode # - # source://prism//lib/prism/node.rb#16099 + # source://prism//lib/prism/node.rb#15641 + sig do + params( + source: Prism::Source, + flags: Integer, + name: Symbol, + name_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, flags, name, name_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#16109 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#15651 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16114 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15656 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#16124 + # source://prism//lib/prism/node.rb#15666 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#16119 + # source://prism//lib/prism/node.rb#15661 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> RequiredKeywordParameterNode + # def copy: (?flags: Integer, ?name: Symbol, ?name_loc: Location, ?location: Location) -> RequiredKeywordParameterNode # - # source://prism//lib/prism/node.rb#16129 - sig { params(params: T.untyped).returns(Prism::RequiredKeywordParameterNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#15671 + sig do + params( + flags: Integer, + name: Symbol, + name_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::RequiredKeywordParameterNode) + end + def copy(flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16114 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15656 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, name: Symbol, name_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#16143 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#15679 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#16167 + # source://prism//lib/prism/node.rb#15704 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#16152 + # source://prism//lib/prism/node.rb#15688 sig { returns(Symbol) } def name; end # attr_reader name_loc: Location # - # source://prism//lib/prism/node.rb#16155 + # source://prism//lib/prism/node.rb#15691 sig { returns(Prism::Location) } def name_loc; end @@ -23770,7 +26688,7 @@ class Prism::RequiredKeywordParameterNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#16162 + # source://prism//lib/prism/node.rb#15699 sig { returns(T::Boolean) } def repeated_parameter?; end @@ -23789,14 +26707,15 @@ class Prism::RequiredKeywordParameterNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#16190 + # source://prism//lib/prism/node.rb#15727 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#16148 + # source://prism//lib/prism/node.rb#15684 sig { returns(Integer) } def flags; end @@ -23808,7 +26727,7 @@ class Prism::RequiredKeywordParameterNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#16200 + # source://prism//lib/prism/node.rb#15737 def type; end end end @@ -23819,68 +26738,71 @@ end # ^ # end # -# source://prism//lib/prism/node.rb#16210 +# source://prism//lib/prism/node.rb#15747 class Prism::RequiredParameterNode < ::Prism::Node # def initialize: (Integer flags, Symbol name, Location location) -> void # # @return [RequiredParameterNode] a new instance of RequiredParameterNode # - # source://prism//lib/prism/node.rb#16212 + # source://prism//lib/prism/node.rb#15749 + sig { params(source: Prism::Source, flags: Integer, name: Symbol, location: Prism::Location).void } def initialize(source, flags, name, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#16221 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#15758 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16226 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15763 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#16236 + # source://prism//lib/prism/node.rb#15773 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#16231 + # source://prism//lib/prism/node.rb#15768 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> RequiredParameterNode + # def copy: (?flags: Integer, ?name: Symbol, ?location: Location) -> RequiredParameterNode # - # source://prism//lib/prism/node.rb#16241 - sig { params(params: T.untyped).returns(Prism::RequiredParameterNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#15778 + sig { params(flags: Integer, name: Symbol, location: Prism::Location).returns(Prism::RequiredParameterNode) } + def copy(flags: T.unsafe(nil), name: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16226 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15763 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, name: Symbol, location: Location } # - # source://prism//lib/prism/node.rb#16254 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#15786 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#16272 + # source://prism//lib/prism/node.rb#15804 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol # - # source://prism//lib/prism/node.rb#16263 + # source://prism//lib/prism/node.rb#15795 sig { returns(Symbol) } def name; end @@ -23888,7 +26810,7 @@ class Prism::RequiredParameterNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#16267 + # source://prism//lib/prism/node.rb#15799 sig { returns(T::Boolean) } def repeated_parameter?; end @@ -23907,14 +26829,15 @@ class Prism::RequiredParameterNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#16294 + # source://prism//lib/prism/node.rb#15826 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#16259 + # source://prism//lib/prism/node.rb#15791 sig { returns(Integer) } def flags; end @@ -23926,7 +26849,7 @@ class Prism::RequiredParameterNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#16304 + # source://prism//lib/prism/node.rb#15836 def type; end end end @@ -23936,90 +26859,108 @@ end # foo rescue nil # ^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#16313 +# source://prism//lib/prism/node.rb#15845 class Prism::RescueModifierNode < ::Prism::Node - # def initialize: (Node expression, Location keyword_loc, Node rescue_expression, Location location) -> void + # def initialize: (Prism::node expression, Location keyword_loc, Prism::node rescue_expression, Location location) -> void # # @return [RescueModifierNode] a new instance of RescueModifierNode # - # source://prism//lib/prism/node.rb#16315 + # source://prism//lib/prism/node.rb#15847 + sig do + params( + source: Prism::Source, + expression: Prism::Node, + keyword_loc: Prism::Location, + rescue_expression: Prism::Node, + location: Prism::Location + ).void + end def initialize(source, expression, keyword_loc, rescue_expression, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#16325 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#15857 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16334 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15866 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#16344 + # source://prism//lib/prism/node.rb#15876 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#16339 + # source://prism//lib/prism/node.rb#15871 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> RescueModifierNode + # def copy: (?expression: Prism::node, ?keyword_loc: Location, ?rescue_expression: Prism::node, ?location: Location) -> RescueModifierNode # - # source://prism//lib/prism/node.rb#16349 - sig { params(params: T.untyped).returns(Prism::RescueModifierNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#15881 + sig do + params( + expression: Prism::Node, + keyword_loc: Prism::Location, + rescue_expression: Prism::Node, + location: Prism::Location + ).returns(Prism::RescueModifierNode) + end + def copy(expression: T.unsafe(nil), keyword_loc: T.unsafe(nil), rescue_expression: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16334 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15866 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { expression: Node, keyword_loc: Location, rescue_expression: Node, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { expression: Prism::node, keyword_loc: Location, rescue_expression: Prism::node, location: Location } # - # source://prism//lib/prism/node.rb#16363 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#15889 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # attr_reader expression: Node + # attr_reader expression: Prism::node # - # source://prism//lib/prism/node.rb#16368 + # source://prism//lib/prism/node.rb#15894 sig { returns(Prism::Node) } def expression; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#16386 + # source://prism//lib/prism/node.rb#15913 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#16381 + # source://prism//lib/prism/node.rb#15908 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#16371 + # source://prism//lib/prism/node.rb#15897 sig { returns(Prism::Location) } def keyword_loc; end - # attr_reader rescue_expression: Node + # attr_reader rescue_expression: Prism::node # - # source://prism//lib/prism/node.rb#16377 + # source://prism//lib/prism/node.rb#15904 sig { returns(Prism::Node) } def rescue_expression; end - # source://prism//lib/prism/node.rb#16329 + # source://prism//lib/prism/node.rb#15861 def set_newline_flag(newline_marked); end # Sometimes you want to check an instance of a node against a list of @@ -24037,7 +26978,8 @@ class Prism::RescueModifierNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#16410 + # source://prism//lib/prism/node.rb#15937 + sig { override.returns(Symbol) } def type; end class << self @@ -24048,7 +26990,7 @@ class Prism::RescueModifierNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#16420 + # source://prism//lib/prism/node.rb#15947 def type; end end end @@ -24063,110 +27005,134 @@ end # # `Foo, *splat, Bar` are in the `exceptions` field. `ex` is in the `exception` field. # -# source://prism//lib/prism/node.rb#16434 +# source://prism//lib/prism/node.rb#15961 class Prism::RescueNode < ::Prism::Node - # def initialize: (Location keyword_loc, Array[Node] exceptions, Location? operator_loc, Node? reference, StatementsNode? statements, RescueNode? consequent, Location location) -> void + # def initialize: (Location keyword_loc, Array[Prism::node] exceptions, Location? operator_loc, Prism::node? reference, StatementsNode? statements, RescueNode? consequent, Location location) -> void # # @return [RescueNode] a new instance of RescueNode # - # source://prism//lib/prism/node.rb#16436 + # source://prism//lib/prism/node.rb#15963 + sig do + params( + source: Prism::Source, + keyword_loc: Prism::Location, + exceptions: T::Array[Prism::Node], + operator_loc: T.nilable(Prism::Location), + reference: T.nilable(Prism::Node), + statements: T.nilable(Prism::StatementsNode), + consequent: T.nilable(Prism::RescueNode), + location: Prism::Location + ).void + end def initialize(source, keyword_loc, exceptions, operator_loc, reference, statements, consequent, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#16449 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#15976 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16454 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15981 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#16469 + # source://prism//lib/prism/node.rb#15996 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#16459 + # source://prism//lib/prism/node.rb#15986 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end # attr_reader consequent: RescueNode? # - # source://prism//lib/prism/node.rb#16523 + # source://prism//lib/prism/node.rb#16043 sig { returns(T.nilable(Prism::RescueNode)) } def consequent; end - # def copy: (**params) -> RescueNode + # def copy: (?keyword_loc: Location, ?exceptions: Array[Prism::node], ?operator_loc: Location?, ?reference: Prism::node?, ?statements: StatementsNode?, ?consequent: RescueNode?, ?location: Location) -> RescueNode # - # source://prism//lib/prism/node.rb#16474 - sig { params(params: T.untyped).returns(Prism::RescueNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#16001 + sig do + params( + keyword_loc: Prism::Location, + exceptions: T::Array[Prism::Node], + operator_loc: T.nilable(Prism::Location), + reference: T.nilable(Prism::Node), + statements: T.nilable(Prism::StatementsNode), + consequent: T.nilable(Prism::RescueNode), + location: Prism::Location + ).returns(Prism::RescueNode) + end + def copy(keyword_loc: T.unsafe(nil), exceptions: T.unsafe(nil), operator_loc: T.unsafe(nil), reference: T.unsafe(nil), statements: T.unsafe(nil), consequent: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16454 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#15981 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { keyword_loc: Location, exceptions: Array[Node], operator_loc: Location?, reference: Node?, statements: StatementsNode?, consequent: RescueNode?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { keyword_loc: Location, exceptions: Array[Prism::node], operator_loc: Location?, reference: Prism::node?, statements: StatementsNode?, consequent: RescueNode?, location: Location } # - # source://prism//lib/prism/node.rb#16491 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#16009 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # attr_reader exceptions: Array[Node] + # attr_reader exceptions: Array[Prism::node] # - # source://prism//lib/prism/node.rb#16502 + # source://prism//lib/prism/node.rb#16021 sig { returns(T::Array[Prism::Node]) } def exceptions; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#16537 + # source://prism//lib/prism/node.rb#16057 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#16527 + # source://prism//lib/prism/node.rb#16047 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#16496 + # source://prism//lib/prism/node.rb#16014 sig { returns(Prism::Location) } def keyword_loc; end # def operator: () -> String? # - # source://prism//lib/prism/node.rb#16532 + # source://prism//lib/prism/node.rb#16052 sig { returns(T.nilable(String)) } def operator; end # attr_reader operator_loc: Location? # - # source://prism//lib/prism/node.rb#16505 + # source://prism//lib/prism/node.rb#16024 sig { returns(T.nilable(Prism::Location)) } def operator_loc; end - # attr_reader reference: Node? + # attr_reader reference: Prism::node? # - # source://prism//lib/prism/node.rb#16517 + # source://prism//lib/prism/node.rb#16037 sig { returns(T.nilable(Prism::Node)) } def reference; end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#16520 + # source://prism//lib/prism/node.rb#16040 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end @@ -24185,7 +27151,8 @@ class Prism::RescueNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#16577 + # source://prism//lib/prism/node.rb#16097 + sig { override.returns(Symbol) } def type; end class << self @@ -24196,7 +27163,7 @@ class Prism::RescueNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#16587 + # source://prism//lib/prism/node.rb#16107 def type; end end end @@ -24207,86 +27174,106 @@ end # ^^ # end # -# source://prism//lib/prism/node.rb#16597 +# source://prism//lib/prism/node.rb#16117 class Prism::RestParameterNode < ::Prism::Node # def initialize: (Integer flags, Symbol? name, Location? name_loc, Location operator_loc, Location location) -> void # # @return [RestParameterNode] a new instance of RestParameterNode # - # source://prism//lib/prism/node.rb#16599 + # source://prism//lib/prism/node.rb#16119 + sig do + params( + source: Prism::Source, + flags: Integer, + name: T.nilable(Symbol), + name_loc: T.nilable(Prism::Location), + operator_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, flags, name, name_loc, operator_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#16610 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#16130 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16615 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16135 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#16625 + # source://prism//lib/prism/node.rb#16145 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#16620 + # source://prism//lib/prism/node.rb#16140 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> RestParameterNode + # def copy: (?flags: Integer, ?name: Symbol?, ?name_loc: Location?, ?operator_loc: Location, ?location: Location) -> RestParameterNode # - # source://prism//lib/prism/node.rb#16630 - sig { params(params: T.untyped).returns(Prism::RestParameterNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#16150 + sig do + params( + flags: Integer, + name: T.nilable(Symbol), + name_loc: T.nilable(Prism::Location), + operator_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::RestParameterNode) + end + def copy(flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16615 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16135 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, name: Symbol?, name_loc: Location?, operator_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#16645 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#16158 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#16686 + # source://prism//lib/prism/node.rb#16201 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader name: Symbol? # - # source://prism//lib/prism/node.rb#16654 + # source://prism//lib/prism/node.rb#16167 sig { returns(T.nilable(Symbol)) } def name; end # attr_reader name_loc: Location? # - # source://prism//lib/prism/node.rb#16657 + # source://prism//lib/prism/node.rb#16170 sig { returns(T.nilable(Prism::Location)) } def name_loc; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#16681 + # source://prism//lib/prism/node.rb#16196 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#16669 + # source://prism//lib/prism/node.rb#16183 sig { returns(Prism::Location) } def operator_loc; end @@ -24294,7 +27281,7 @@ class Prism::RestParameterNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#16676 + # source://prism//lib/prism/node.rb#16191 sig { returns(T::Boolean) } def repeated_parameter?; end @@ -24313,14 +27300,15 @@ class Prism::RestParameterNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#16714 + # source://prism//lib/prism/node.rb#16229 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#16650 + # source://prism//lib/prism/node.rb#16163 sig { returns(Integer) } def flags; end @@ -24332,7 +27320,7 @@ class Prism::RestParameterNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#16724 + # source://prism//lib/prism/node.rb#16239 def type; end end end @@ -24342,63 +27330,66 @@ end # retry # ^^^^^ # -# source://prism//lib/prism/node.rb#16733 +# source://prism//lib/prism/node.rb#16248 class Prism::RetryNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [RetryNode] a new instance of RetryNode # - # source://prism//lib/prism/node.rb#16735 + # source://prism//lib/prism/node.rb#16250 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#16742 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#16257 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16747 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16262 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#16757 + # source://prism//lib/prism/node.rb#16272 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#16752 + # source://prism//lib/prism/node.rb#16267 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> RetryNode + # def copy: (?location: Location) -> RetryNode # - # source://prism//lib/prism/node.rb#16762 - sig { params(params: T.untyped).returns(Prism::RetryNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#16277 + sig { params(location: Prism::Location).returns(Prism::RetryNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16747 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16262 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#16773 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#16285 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#16779 + # source://prism//lib/prism/node.rb#16291 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -24416,7 +27407,8 @@ class Prism::RetryNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#16798 + # source://prism//lib/prism/node.rb#16310 + sig { override.returns(Symbol) } def type; end class << self @@ -24427,7 +27419,7 @@ class Prism::RetryNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#16808 + # source://prism//lib/prism/node.rb#16320 def type; end end end @@ -24437,80 +27429,96 @@ end # return 1 # ^^^^^^^^ # -# source://prism//lib/prism/node.rb#16817 +# source://prism//lib/prism/node.rb#16329 class Prism::ReturnNode < ::Prism::Node # def initialize: (Location keyword_loc, ArgumentsNode? arguments, Location location) -> void # # @return [ReturnNode] a new instance of ReturnNode # - # source://prism//lib/prism/node.rb#16819 + # source://prism//lib/prism/node.rb#16331 + sig do + params( + source: Prism::Source, + keyword_loc: Prism::Location, + arguments: T.nilable(Prism::ArgumentsNode), + location: Prism::Location + ).void + end def initialize(source, keyword_loc, arguments, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#16828 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#16340 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader arguments: ArgumentsNode? # - # source://prism//lib/prism/node.rb#16874 + # source://prism//lib/prism/node.rb#16382 sig { returns(T.nilable(Prism::ArgumentsNode)) } def arguments; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16833 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16345 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#16845 + # source://prism//lib/prism/node.rb#16357 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#16838 + # source://prism//lib/prism/node.rb#16350 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> ReturnNode + # def copy: (?keyword_loc: Location, ?arguments: ArgumentsNode?, ?location: Location) -> ReturnNode # - # source://prism//lib/prism/node.rb#16850 - sig { params(params: T.untyped).returns(Prism::ReturnNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#16362 + sig do + params( + keyword_loc: Prism::Location, + arguments: T.nilable(Prism::ArgumentsNode), + location: Prism::Location + ).returns(Prism::ReturnNode) + end + def copy(keyword_loc: T.unsafe(nil), arguments: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16833 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16345 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { keyword_loc: Location, arguments: ArgumentsNode?, location: Location } # - # source://prism//lib/prism/node.rb#16863 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#16370 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#16883 + # source://prism//lib/prism/node.rb#16391 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#16878 + # source://prism//lib/prism/node.rb#16386 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#16868 + # source://prism//lib/prism/node.rb#16375 sig { returns(Prism::Location) } def keyword_loc; end @@ -24529,7 +27537,8 @@ class Prism::ReturnNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#16909 + # source://prism//lib/prism/node.rb#16417 + sig { override.returns(Symbol) } def type; end class << self @@ -24540,7 +27549,7 @@ class Prism::ReturnNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#16919 + # source://prism//lib/prism/node.rb#16427 def type; end end end @@ -24550,63 +27559,66 @@ end # self # ^^^^ # -# source://prism//lib/prism/node.rb#16928 +# source://prism//lib/prism/node.rb#16436 class Prism::SelfNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [SelfNode] a new instance of SelfNode # - # source://prism//lib/prism/node.rb#16930 + # source://prism//lib/prism/node.rb#16438 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#16937 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#16445 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16942 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16450 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#16952 + # source://prism//lib/prism/node.rb#16460 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#16947 + # source://prism//lib/prism/node.rb#16455 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> SelfNode + # def copy: (?location: Location) -> SelfNode # - # source://prism//lib/prism/node.rb#16957 - sig { params(params: T.untyped).returns(Prism::SelfNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#16465 + sig { params(location: Prism::Location).returns(Prism::SelfNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#16942 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16450 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#16968 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#16473 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#16974 + # source://prism//lib/prism/node.rb#16479 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -24624,7 +27636,8 @@ class Prism::SelfNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#16993 + # source://prism//lib/prism/node.rb#16498 + sig { override.returns(Symbol) } def type; end class << self @@ -24635,292 +27648,508 @@ class Prism::SelfNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#17003 + # source://prism//lib/prism/node.rb#16508 def type; end end end # A module responsible for deserializing parse results. # -# source://prism//lib/prism/serialize.rb#23 +# source://prism//lib/prism/serialize.rb#14 module Prism::Serialize class << self # Deserialize the AST represented by the given string into a parse result. # - # source://prism//lib/prism/serialize.rb#37 + # source://prism//lib/prism/serialize.rb#28 def load(input, serialized); end # Deserialize the tokens represented by the given string into a parse # result. # - # source://prism//lib/prism/serialize.rb#49 + # source://prism//lib/prism/serialize.rb#40 def load_tokens(source, serialized); end end end -# source://prism//lib/prism/serialize.rb#53 +# source://prism//lib/prism/serialize.rb#44 class Prism::Serialize::Loader # @return [Loader] a new instance of Loader # - # source://prism//lib/prism/serialize.rb#58 + # source://prism//lib/prism/serialize.rb#80 def initialize(source, serialized); end # Returns the value of attribute constant_pool. # - # source://prism//lib/prism/serialize.rb#55 + # source://prism//lib/prism/serialize.rb#77 def constant_pool; end # Returns the value of attribute constant_pool_offset. # - # source://prism//lib/prism/serialize.rb#55 + # source://prism//lib/prism/serialize.rb#77 def constant_pool_offset; end # Returns the value of attribute encoding. # - # source://prism//lib/prism/serialize.rb#54 + # source://prism//lib/prism/serialize.rb#76 def encoding; end # Returns the value of attribute input. # - # source://prism//lib/prism/serialize.rb#54 + # source://prism//lib/prism/serialize.rb#76 def input; end # Returns the value of attribute io. # - # source://prism//lib/prism/serialize.rb#54 + # source://prism//lib/prism/serialize.rb#76 def io; end - # source://prism//lib/prism/serialize.rb#96 + # source://prism//lib/prism/serialize.rb#118 def load_comments; end - # source://prism//lib/prism/serialize.rb#82 + # source://prism//lib/prism/serialize.rb#104 def load_encoding; end - # source://prism//lib/prism/serialize.rb#73 + # source://prism//lib/prism/serialize.rb#95 def load_header; end - # source://prism//lib/prism/serialize.rb#92 + # source://prism//lib/prism/serialize.rb#114 def load_line_offsets; end - # source://prism//lib/prism/serialize.rb#106 + # source://prism//lib/prism/serialize.rb#413 def load_metadata; end - # source://prism//lib/prism/serialize.rb#140 + # source://prism//lib/prism/serialize.rb#447 def load_nodes; end - # source://prism//lib/prism/serialize.rb#154 + # source://prism//lib/prism/serialize.rb#461 def load_result; end - # source://prism//lib/prism/serialize.rb#88 + # source://prism//lib/prism/serialize.rb#110 def load_start_line; end - # source://prism//lib/prism/serialize.rb#115 + # source://prism//lib/prism/serialize.rb#422 def load_tokens; end - # source://prism//lib/prism/serialize.rb#128 + # source://prism//lib/prism/serialize.rb#435 def load_tokens_result; end # Returns the value of attribute serialized. # - # source://prism//lib/prism/serialize.rb#54 + # source://prism//lib/prism/serialize.rb#76 def serialized; end # Returns the value of attribute source. # - # source://prism//lib/prism/serialize.rb#55 + # source://prism//lib/prism/serialize.rb#77 def source; end # Returns the value of attribute start_line. # - # source://prism//lib/prism/serialize.rb#56 + # source://prism//lib/prism/serialize.rb#78 def start_line; end private - # source://prism//lib/prism/serialize.rb#217 + # source://prism//lib/prism/serialize.rb#547 def load_constant(index); end - # source://prism//lib/prism/serialize.rb#193 + # source://prism//lib/prism/serialize.rb#500 + def load_double; end + + # source://prism//lib/prism/serialize.rb#515 def load_embedded_string; end - # source://prism//lib/prism/serialize.rb#247 + # source://prism//lib/prism/serialize.rb#577 def load_error_level; end - # source://prism//lib/prism/serialize.rb#209 + # source://prism//lib/prism/serialize.rb#489 + def load_integer; end + + # source://prism//lib/prism/serialize.rb#531 def load_location; end - # source://prism//lib/prism/serialize.rb#274 + # source://prism//lib/prism/serialize.rb#535 + def load_location_object; end + + # source://prism//lib/prism/serialize.rb#606 def load_node; end - # source://prism//lib/prism/serialize.rb#242 + # source://prism//lib/prism/serialize.rb#572 def load_optional_constant; end - # source://prism//lib/prism/serialize.rb#213 + # source://prism//lib/prism/serialize.rb#539 def load_optional_location; end - # source://prism//lib/prism/serialize.rb#186 + # source://prism//lib/prism/serialize.rb#543 + def load_optional_location_object; end + + # source://prism//lib/prism/serialize.rb#508 def load_optional_node; end - # source://prism//lib/prism/serialize.rb#238 + # source://prism//lib/prism/serialize.rb#568 def load_required_constant; end - # source://prism//lib/prism/serialize.rb#182 - def load_serialized_length; end - - # source://prism//lib/prism/serialize.rb#197 + # source://prism//lib/prism/serialize.rb#519 def load_string; end - # source://prism//lib/prism/serialize.rb#177 + # source://prism//lib/prism/serialize.rb#504 + def load_uint32; end + + # source://prism//lib/prism/serialize.rb#484 def load_varsint; end # variable-length integer using https://en.wikipedia.org/wiki/LEB128 # This is also what protobuf uses: https://protobuf.dev/programming-guides/encoding/#varints # - # source://prism//lib/prism/serialize.rb#163 + # source://prism//lib/prism/serialize.rb#470 def load_varuint; end - # source://prism//lib/prism/serialize.rb#260 + # source://prism//lib/prism/serialize.rb#592 def load_warning_level; end end +# source://prism//lib/prism/serialize.rb#127 +Prism::Serialize::Loader::DIAGNOSTIC_TYPES = T.let(T.unsafe(nil), Array) + +# StringIO is synchronized and that adds a high overhead on TruffleRuby. +# +# source://prism//lib/prism/serialize.rb#72 +Prism::Serialize::Loader::FastStringIO = StringIO + # The major version of prism that we are expecting to find in the serialized # strings. # -# source://prism//lib/prism/serialize.rb#26 +# source://prism//lib/prism/serialize.rb#17 Prism::Serialize::MAJOR_VERSION = T.let(T.unsafe(nil), Integer) # The minor version of prism that we are expecting to find in the serialized # strings. # -# source://prism//lib/prism/serialize.rb#30 +# source://prism//lib/prism/serialize.rb#21 Prism::Serialize::MINOR_VERSION = T.let(T.unsafe(nil), Integer) # The patch version of prism that we are expecting to find in the serialized # strings. # -# source://prism//lib/prism/serialize.rb#34 +# source://prism//lib/prism/serialize.rb#25 Prism::Serialize::PATCH_VERSION = T.let(T.unsafe(nil), Integer) # The token types that can be indexed by their enum values. # -# source://prism//lib/prism/serialize.rb#1482 +# source://prism//lib/prism/serialize.rb#1830 Prism::Serialize::TOKEN_TYPES = T.let(T.unsafe(nil), Array) -# Represents a singleton class declaration involving the `class` keyword. +# This node wraps a constant write to indicate that when the value is written, it should have its shareability state modified. # -# class << self end -# ^^^^^^^^^^^^^^^^^ +# C = { a: 1 } +# ^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#17012 -class Prism::SingletonClassNode < ::Prism::Node - # def initialize: (Array[Symbol] locals, Location class_keyword_loc, Location operator_loc, Node expression, Node? body, Location end_keyword_loc, Location location) -> void +# source://prism//lib/prism/node.rb#16518 +class Prism::ShareableConstantNode < ::Prism::Node + # def initialize: (Integer flags, ConstantWriteNode | ConstantAndWriteNode | ConstantOrWriteNode | ConstantOperatorWriteNode | ConstantPathWriteNode | ConstantPathAndWriteNode | ConstantPathOrWriteNode | ConstantPathOperatorWriteNode write, Location location) -> void # - # @return [SingletonClassNode] a new instance of SingletonClassNode + # @return [ShareableConstantNode] a new instance of ShareableConstantNode # - # source://prism//lib/prism/node.rb#17014 - def initialize(source, locals, class_keyword_loc, operator_loc, expression, body, end_keyword_loc, location); end + # source://prism//lib/prism/node.rb#16520 + sig do + params( + source: Prism::Source, + flags: Integer, + write: T.any(Prism::ConstantWriteNode, Prism::ConstantAndWriteNode, Prism::ConstantOrWriteNode, Prism::ConstantOperatorWriteNode, Prism::ConstantPathWriteNode, Prism::ConstantPathAndWriteNode, Prism::ConstantPathOrWriteNode, Prism::ConstantPathOperatorWriteNode), + location: Prism::Location + ).void + end + def initialize(source, flags, write, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#17027 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#16529 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader body: Node? - # - # source://prism//lib/prism/node.rb#17090 - sig { returns(T.nilable(Prism::Node)) } - def body; end - # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17032 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16534 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end - # def class_keyword: () -> String - # - # source://prism//lib/prism/node.rb#17100 - sig { returns(String) } - def class_keyword; end - - # attr_reader class_keyword_loc: Location - # - # source://prism//lib/prism/node.rb#17075 - sig { returns(Prism::Location) } - def class_keyword_loc; end - # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#17045 + # source://prism//lib/prism/node.rb#16544 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#17037 + # source://prism//lib/prism/node.rb#16539 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> SingletonClassNode + # def copy: (?flags: Integer, ?write: ConstantWriteNode | ConstantAndWriteNode | ConstantOrWriteNode | ConstantOperatorWriteNode | ConstantPathWriteNode | ConstantPathAndWriteNode | ConstantPathOrWriteNode | ConstantPathOperatorWriteNode, ?location: Location) -> ShareableConstantNode # - # source://prism//lib/prism/node.rb#17050 - sig { params(params: T.untyped).returns(Prism::SingletonClassNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#16549 + sig do + params( + flags: Integer, + write: T.any(Prism::ConstantWriteNode, Prism::ConstantAndWriteNode, Prism::ConstantOrWriteNode, Prism::ConstantOperatorWriteNode, Prism::ConstantPathWriteNode, Prism::ConstantPathAndWriteNode, Prism::ConstantPathOrWriteNode, Prism::ConstantPathOperatorWriteNode), + location: Prism::Location + ).returns(Prism::ShareableConstantNode) + end + def copy(flags: T.unsafe(nil), write: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17032 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16534 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], class_keyword_loc: Location, operator_loc: Location, expression: Node, body: Node?, end_keyword_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, write: ConstantWriteNode | ConstantAndWriteNode | ConstantOrWriteNode | ConstantOperatorWriteNode | ConstantPathWriteNode | ConstantPathAndWriteNode | ConstantPathOrWriteNode | ConstantPathOperatorWriteNode, location: Location } # - # source://prism//lib/prism/node.rb#17067 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#16557 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # def end_keyword: () -> String + # def experimental_copy?: () -> bool # - # source://prism//lib/prism/node.rb#17110 - sig { returns(String) } - def end_keyword; end + # @return [Boolean] + # + # source://prism//lib/prism/node.rb#16580 + sig { returns(T::Boolean) } + def experimental_copy?; end - # attr_reader end_keyword_loc: Location + # def experimental_everything?: () -> bool # - # source://prism//lib/prism/node.rb#17093 + # @return [Boolean] + # + # source://prism//lib/prism/node.rb#16575 + sig { returns(T::Boolean) } + def experimental_everything?; end + + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + + # def inspect(NodeInspector inspector) -> String + # + # source://prism//lib/prism/node.rb#16585 + sig { params(inspector: T.untyped).returns(String) } + def inspect(inspector = T.unsafe(nil)); end + + # def literal?: () -> bool + # + # @return [Boolean] + # + # source://prism//lib/prism/node.rb#16570 + sig { returns(T::Boolean) } + def literal?; end + + # Sometimes you want to check an instance of a node against a list of + # classes to see what kind of behavior to perform. Usually this is done by + # calling `[cls1, cls2].include?(node.class)` or putting the node into a + # case statement and doing `case node; when cls1; when cls2; end`. Both of + # these approaches are relatively slow because of the constant lookups, + # method calls, and/or array allocations. + # + # Instead, you can call #type, which will return to you a symbol that you + # can use for comparison. This is faster than the other approaches because + # it uses a single integer comparison, but also because if you're on CRuby + # you can take advantage of the fact that case statements with all symbol + # keys will use a jump table. + # + # def type: () -> Symbol + # + # source://prism//lib/prism/node.rb#16608 + sig { override.returns(Symbol) } + def type; end + + # The constant write that should be modified with the shareability state. + # + # source://prism//lib/prism/node.rb#16566 + sig do + returns(T.any(Prism::ConstantWriteNode, Prism::ConstantAndWriteNode, Prism::ConstantOrWriteNode, Prism::ConstantOperatorWriteNode, Prism::ConstantPathWriteNode, Prism::ConstantPathAndWriteNode, Prism::ConstantPathOrWriteNode, Prism::ConstantPathOperatorWriteNode)) + end + def write; end + + private + + # private attr_reader flags: Integer + # + # source://prism//lib/prism/node.rb#16562 + sig { returns(Integer) } + def flags; end + + class << self + # Similar to #type, this method returns a symbol that you can use for + # splitting on the type of the node without having to do a long === chain. + # Note that like #type, it will still be slower than using == for a single + # class, but should be faster in a case statement or an array comparison. + # + # def self.type: () -> Symbol + # + # source://prism//lib/prism/node.rb#16618 + def type; end + end +end + +# Flags for shareable constant nodes. +# +# source://prism//lib/prism/node.rb#18950 +module Prism::ShareableConstantNodeFlags; end + +# constant writes that should be modified with shareable constant value experimental copy +# +# source://prism//lib/prism/node.rb#18958 +Prism::ShareableConstantNodeFlags::EXPERIMENTAL_COPY = T.let(T.unsafe(nil), Integer) + +# constant writes that should be modified with shareable constant value experimental everything +# +# source://prism//lib/prism/node.rb#18955 +Prism::ShareableConstantNodeFlags::EXPERIMENTAL_EVERYTHING = T.let(T.unsafe(nil), Integer) + +# constant writes that should be modified with shareable constant value literal +# +# source://prism//lib/prism/node.rb#18952 +Prism::ShareableConstantNodeFlags::LITERAL = T.let(T.unsafe(nil), Integer) + +# Represents a singleton class declaration involving the `class` keyword. +# +# class << self end +# ^^^^^^^^^^^^^^^^^ +# +# source://prism//lib/prism/node.rb#16627 +class Prism::SingletonClassNode < ::Prism::Node + # def initialize: (Array[Symbol] locals, Location class_keyword_loc, Location operator_loc, Prism::node expression, Prism::node? body, Location end_keyword_loc, Location location) -> void + # + # @return [SingletonClassNode] a new instance of SingletonClassNode + # + # source://prism//lib/prism/node.rb#16629 + sig do + params( + source: Prism::Source, + locals: T::Array[Symbol], + class_keyword_loc: Prism::Location, + operator_loc: Prism::Location, + expression: Prism::Node, + body: T.nilable(Prism::Node), + end_keyword_loc: Prism::Location, + location: Prism::Location + ).void + end + def initialize(source, locals, class_keyword_loc, operator_loc, expression, body, end_keyword_loc, location); end + + # def accept: (Visitor visitor) -> void + # + # source://prism//lib/prism/node.rb#16642 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } + def accept(visitor); end + + # attr_reader body: Prism::node? + # + # source://prism//lib/prism/node.rb#16698 + sig { returns(T.nilable(Prism::Node)) } + def body; end + + # def child_nodes: () -> Array[nil | Node] + # + # source://prism//lib/prism/node.rb#16647 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } + def child_nodes; end + + # def class_keyword: () -> String + # + # source://prism//lib/prism/node.rb#16709 + sig { returns(String) } + def class_keyword; end + + # attr_reader class_keyword_loc: Location + # + # source://prism//lib/prism/node.rb#16681 + sig { returns(Prism::Location) } + def class_keyword_loc; end + + # def comment_targets: () -> Array[Node | Location] + # + # source://prism//lib/prism/node.rb#16660 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } + def comment_targets; end + + # def compact_child_nodes: () -> Array[Node] + # + # source://prism//lib/prism/node.rb#16652 + sig { override.returns(T::Array[Prism::Node]) } + def compact_child_nodes; end + + # def copy: (?locals: Array[Symbol], ?class_keyword_loc: Location, ?operator_loc: Location, ?expression: Prism::node, ?body: Prism::node?, ?end_keyword_loc: Location, ?location: Location) -> SingletonClassNode + # + # source://prism//lib/prism/node.rb#16665 + sig do + params( + locals: T::Array[Symbol], + class_keyword_loc: Prism::Location, + operator_loc: Prism::Location, + expression: Prism::Node, + body: T.nilable(Prism::Node), + end_keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::SingletonClassNode) + end + def copy(locals: T.unsafe(nil), class_keyword_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), expression: T.unsafe(nil), body: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end + + # def child_nodes: () -> Array[nil | Node] + # def deconstruct: () -> Array[nil | Node] + # + # source://prism//lib/prism/node.rb#16647 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } + def deconstruct; end + + # def deconstruct_keys: (Array[Symbol] keys) -> { locals: Array[Symbol], class_keyword_loc: Location, operator_loc: Location, expression: Prism::node, body: Prism::node?, end_keyword_loc: Location, location: Location } + # + # source://prism//lib/prism/node.rb#16673 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } + def deconstruct_keys(keys); end + + # def end_keyword: () -> String + # + # source://prism//lib/prism/node.rb#16719 + sig { returns(String) } + def end_keyword; end + + # attr_reader end_keyword_loc: Location + # + # source://prism//lib/prism/node.rb#16701 sig { returns(Prism::Location) } def end_keyword_loc; end - # attr_reader expression: Node + # attr_reader expression: Prism::node # - # source://prism//lib/prism/node.rb#17087 + # source://prism//lib/prism/node.rb#16695 sig { returns(Prism::Node) } def expression; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#17115 + # source://prism//lib/prism/node.rb#16724 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # attr_reader locals: Array[Symbol] # - # source://prism//lib/prism/node.rb#17072 + # source://prism//lib/prism/node.rb#16678 sig { returns(T::Array[Symbol]) } def locals; end # def operator: () -> String # - # source://prism//lib/prism/node.rb#17105 + # source://prism//lib/prism/node.rb#16714 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#17081 + # source://prism//lib/prism/node.rb#16688 sig { returns(Prism::Location) } def operator_loc; end @@ -24939,7 +28168,8 @@ class Prism::SingletonClassNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#17146 + # source://prism//lib/prism/node.rb#16755 + sig { override.returns(Symbol) } def type; end class << self @@ -24950,7 +28180,7 @@ class Prism::SingletonClassNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#17156 + # source://prism//lib/prism/node.rb#16765 def type; end end end @@ -24966,22 +28196,26 @@ class Prism::Source # @return [Source] a new instance of Source # # source://prism//lib/prism/parse_result.rb#18 + sig { params(source: String, start_line: Integer, offsets: T::Array[Integer]).void } def initialize(source, start_line = T.unsafe(nil), offsets = T.unsafe(nil)); end # Return the column number in characters for the given byte offset. # - # source://prism//lib/prism/parse_result.rb#53 + # source://prism//lib/prism/parse_result.rb#59 + sig { params(byte_offset: Integer).returns(Integer) } def character_column(byte_offset); end # Return the character offset for the given byte offset. # - # source://prism//lib/prism/parse_result.rb#48 + # source://prism//lib/prism/parse_result.rb#54 + sig { params(byte_offset: Integer).returns(Integer) } def character_offset(byte_offset); end # Returns the column number in code units for the given encoding for the # given byte offset. # - # source://prism//lib/prism/parse_result.rb#70 + # source://prism//lib/prism/parse_result.rb#76 + sig { params(byte_offset: Integer, encoding: Encoding).returns(Integer) } def code_units_column(byte_offset, encoding); end # Returns the offset from the start of the file for the given byte offset @@ -24991,45 +28225,52 @@ class Prism::Source # concept of code units that differs from the number of characters in other # encodings, it is not captured here. # - # source://prism//lib/prism/parse_result.rb#63 + # source://prism//lib/prism/parse_result.rb#69 + sig { params(byte_offset: Integer, encoding: Encoding).returns(Integer) } def code_units_offset(byte_offset, encoding); end # Return the column number for the given byte offset. # - # source://prism//lib/prism/parse_result.rb#43 + # source://prism//lib/prism/parse_result.rb#49 + sig { params(byte_offset: Integer).returns(Integer) } def column(byte_offset); end + # Returns the encoding of the source code, which is set by parameters to the + # parser or by the encoding magic comment. + # + # source://prism//lib/prism/parse_result.rb#26 + sig { returns(Encoding) } + def encoding; end + # Binary search through the offsets to find the line number for the given # byte offset. # - # source://prism//lib/prism/parse_result.rb#32 + # source://prism//lib/prism/parse_result.rb#38 + sig { params(byte_offset: Integer).returns(Integer) } def line(byte_offset); end - sig { params(value: Integer).returns(Integer) } - def line_offset(value); end - # Return the byte offset of the start of the line corresponding to the given # byte offset. # - # source://prism//lib/prism/parse_result.rb#38 + # source://prism//lib/prism/parse_result.rb#44 + sig { params(byte_offset: Integer).returns(Integer) } def line_start(byte_offset); end # The list of newline byte offsets in the source code. # # source://prism//lib/prism/parse_result.rb#15 - sig { returns(T::Array[Integer]) } def offsets; end # Perform a byteslice on the source code using the given byte offset and # byte length. # - # source://prism//lib/prism/parse_result.rb#26 + # source://prism//lib/prism/parse_result.rb#32 + sig { params(byte_offset: Integer, length: Integer).returns(String) } def slice(byte_offset, length); end # The source code that this source object represents. # # source://prism//lib/prism/parse_result.rb#9 - sig { returns(String) } def source; end # The line number where this source starts. @@ -25042,7 +28283,7 @@ class Prism::Source # Binary search through the offsets to find the line number for the given # byte offset. # - # source://prism//lib/prism/parse_result.rb#78 + # source://prism//lib/prism/parse_result.rb#84 def find_line(byte_offset); end end @@ -25051,63 +28292,66 @@ end # __ENCODING__ # ^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#17165 +# source://prism//lib/prism/node.rb#16774 class Prism::SourceEncodingNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [SourceEncodingNode] a new instance of SourceEncodingNode # - # source://prism//lib/prism/node.rb#17167 + # source://prism//lib/prism/node.rb#16776 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#17174 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#16783 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17179 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16788 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#17189 + # source://prism//lib/prism/node.rb#16798 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#17184 + # source://prism//lib/prism/node.rb#16793 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> SourceEncodingNode + # def copy: (?location: Location) -> SourceEncodingNode # - # source://prism//lib/prism/node.rb#17194 - sig { params(params: T.untyped).returns(Prism::SourceEncodingNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#16803 + sig { params(location: Prism::Location).returns(Prism::SourceEncodingNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17179 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16788 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#17205 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#16811 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#17211 + # source://prism//lib/prism/node.rb#16817 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -25125,7 +28369,8 @@ class Prism::SourceEncodingNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#17230 + # source://prism//lib/prism/node.rb#16836 + sig { override.returns(Symbol) } def type; end class << self @@ -25136,7 +28381,7 @@ class Prism::SourceEncodingNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#17240 + # source://prism//lib/prism/node.rb#16846 def type; end end end @@ -25146,71 +28391,106 @@ end # __FILE__ # ^^^^^^^^ # -# source://prism//lib/prism/node.rb#17249 +# source://prism//lib/prism/node.rb#16855 class Prism::SourceFileNode < ::Prism::Node - # def initialize: (String filepath, Location location) -> void + # def initialize: (Integer flags, String filepath, Location location) -> void # # @return [SourceFileNode] a new instance of SourceFileNode # - # source://prism//lib/prism/node.rb#17251 - def initialize(source, filepath, location); end + # source://prism//lib/prism/node.rb#16857 + sig { params(source: Prism::Source, flags: Integer, filepath: String, location: Prism::Location).void } + def initialize(source, flags, filepath, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#17259 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#16866 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17264 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16871 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#17274 + # source://prism//lib/prism/node.rb#16881 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#17269 + # source://prism//lib/prism/node.rb#16876 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> SourceFileNode + # def copy: (?flags: Integer, ?filepath: String, ?location: Location) -> SourceFileNode # - # source://prism//lib/prism/node.rb#17279 - sig { params(params: T.untyped).returns(Prism::SourceFileNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#16886 + sig { params(flags: Integer, filepath: String, location: Prism::Location).returns(Prism::SourceFileNode) } + def copy(flags: T.unsafe(nil), filepath: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17264 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16871 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { filepath: String, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, filepath: String, location: Location } # - # source://prism//lib/prism/node.rb#17291 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#16894 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # attr_reader filepath: String # - # source://prism//lib/prism/node.rb#17296 + # source://prism//lib/prism/node.rb#16903 sig { returns(String) } def filepath; end + # def forced_binary_encoding?: () -> bool + # + # @return [Boolean] + # + # source://prism//lib/prism/node.rb#16912 + sig { returns(T::Boolean) } + def forced_binary_encoding?; end + + # def forced_utf8_encoding?: () -> bool + # + # @return [Boolean] + # + # source://prism//lib/prism/node.rb#16907 + sig { returns(T::Boolean) } + def forced_utf8_encoding?; end + + # def frozen?: () -> bool + # + # @return [Boolean] + # + # source://prism//lib/prism/node.rb#16917 + sig { returns(T::Boolean) } + def frozen?; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#17300 + # source://prism//lib/prism/node.rb#16927 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end + # def mutable?: () -> bool + # + # @return [Boolean] + # + # source://prism//lib/prism/node.rb#16922 + sig { returns(T::Boolean) } + def mutable?; end + # Sometimes you want to check an instance of a node against a list of # classes to see what kind of behavior to perform. Usually this is done by # calling `[cls1, cls2].include?(node.class)` or putting the node into a @@ -25226,9 +28506,18 @@ class Prism::SourceFileNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#17320 + # source://prism//lib/prism/node.rb#16949 + sig { override.returns(Symbol) } def type; end + private + + # private attr_reader flags: Integer + # + # source://prism//lib/prism/node.rb#16899 + sig { returns(Integer) } + def flags; end + class << self # Similar to #type, this method returns a symbol that you can use for # splitting on the type of the node without having to do a long === chain. @@ -25237,7 +28526,7 @@ class Prism::SourceFileNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#17330 + # source://prism//lib/prism/node.rb#16959 def type; end end end @@ -25247,63 +28536,66 @@ end # __LINE__ # ^^^^^^^^ # -# source://prism//lib/prism/node.rb#17339 +# source://prism//lib/prism/node.rb#16968 class Prism::SourceLineNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [SourceLineNode] a new instance of SourceLineNode # - # source://prism//lib/prism/node.rb#17341 + # source://prism//lib/prism/node.rb#16970 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#17348 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#16977 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17353 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16982 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#17363 + # source://prism//lib/prism/node.rb#16992 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#17358 + # source://prism//lib/prism/node.rb#16987 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> SourceLineNode + # def copy: (?location: Location) -> SourceLineNode # - # source://prism//lib/prism/node.rb#17368 - sig { params(params: T.untyped).returns(Prism::SourceLineNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#16997 + sig { params(location: Prism::Location).returns(Prism::SourceLineNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17353 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#16982 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#17379 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#17005 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#17385 + # source://prism//lib/prism/node.rb#17011 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -25321,7 +28613,8 @@ class Prism::SourceLineNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#17404 + # source://prism//lib/prism/node.rb#17030 + sig { override.returns(Symbol) } def type; end class << self @@ -25332,7 +28625,7 @@ class Prism::SourceLineNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#17414 + # source://prism//lib/prism/node.rb#17040 def type; end end end @@ -25342,80 +28635,96 @@ end # [*a] # ^^ # -# source://prism//lib/prism/node.rb#17423 +# source://prism//lib/prism/node.rb#17049 class Prism::SplatNode < ::Prism::Node - # def initialize: (Location operator_loc, Node? expression, Location location) -> void + # def initialize: (Location operator_loc, Prism::node? expression, Location location) -> void # # @return [SplatNode] a new instance of SplatNode # - # source://prism//lib/prism/node.rb#17425 + # source://prism//lib/prism/node.rb#17051 + sig do + params( + source: Prism::Source, + operator_loc: Prism::Location, + expression: T.nilable(Prism::Node), + location: Prism::Location + ).void + end def initialize(source, operator_loc, expression, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#17434 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#17060 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17439 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17065 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#17451 + # source://prism//lib/prism/node.rb#17077 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#17444 + # source://prism//lib/prism/node.rb#17070 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> SplatNode + # def copy: (?operator_loc: Location, ?expression: Prism::node?, ?location: Location) -> SplatNode # - # source://prism//lib/prism/node.rb#17456 - sig { params(params: T.untyped).returns(Prism::SplatNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#17082 + sig do + params( + operator_loc: Prism::Location, + expression: T.nilable(Prism::Node), + location: Prism::Location + ).returns(Prism::SplatNode) + end + def copy(operator_loc: T.unsafe(nil), expression: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17439 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17065 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { operator_loc: Location, expression: Node?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { operator_loc: Location, expression: Prism::node?, location: Location } # - # source://prism//lib/prism/node.rb#17469 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#17090 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end - # attr_reader expression: Node? + # attr_reader expression: Prism::node? # - # source://prism//lib/prism/node.rb#17480 + # source://prism//lib/prism/node.rb#17102 sig { returns(T.nilable(Prism::Node)) } def expression; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#17489 + # source://prism//lib/prism/node.rb#17111 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def operator: () -> String # - # source://prism//lib/prism/node.rb#17484 + # source://prism//lib/prism/node.rb#17106 sig { returns(String) } def operator; end # attr_reader operator_loc: Location # - # source://prism//lib/prism/node.rb#17474 + # source://prism//lib/prism/node.rb#17095 sig { returns(Prism::Location) } def operator_loc; end @@ -25434,7 +28743,8 @@ class Prism::SplatNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#17515 + # source://prism//lib/prism/node.rb#17137 + sig { override.returns(Symbol) } def type; end class << self @@ -25445,7 +28755,7 @@ class Prism::SplatNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#17525 + # source://prism//lib/prism/node.rb#17147 def type; end end end @@ -25455,69 +28765,72 @@ end # foo; bar; baz # ^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#17534 +# source://prism//lib/prism/node.rb#17156 class Prism::StatementsNode < ::Prism::Node - # def initialize: (Array[Node] body, Location location) -> void + # def initialize: (Array[Prism::node] body, Location location) -> void # # @return [StatementsNode] a new instance of StatementsNode # - # source://prism//lib/prism/node.rb#17536 + # source://prism//lib/prism/node.rb#17158 + sig { params(source: Prism::Source, body: T::Array[Prism::Node], location: Prism::Location).void } def initialize(source, body, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#17544 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#17166 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end - # attr_reader body: Array[Node] + # attr_reader body: Array[Prism::node] # - # source://prism//lib/prism/node.rb#17581 + # source://prism//lib/prism/node.rb#17199 sig { returns(T::Array[Prism::Node]) } def body; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17549 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17171 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#17559 + # source://prism//lib/prism/node.rb#17181 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#17554 + # source://prism//lib/prism/node.rb#17176 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> StatementsNode + # def copy: (?body: Array[Prism::node], ?location: Location) -> StatementsNode # - # source://prism//lib/prism/node.rb#17564 - sig { params(params: T.untyped).returns(Prism::StatementsNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#17186 + sig { params(body: T::Array[Prism::Node], location: Prism::Location).returns(Prism::StatementsNode) } + def copy(body: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17549 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17171 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { body: Array[Node], location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { body: Array[Prism::node], location: Location } # - # source://prism//lib/prism/node.rb#17576 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#17194 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#17585 + # source://prism//lib/prism/node.rb#17203 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -25535,7 +28848,8 @@ class Prism::StatementsNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#17605 + # source://prism//lib/prism/node.rb#17223 + sig { override.returns(Symbol) } def type; end class << self @@ -25546,31 +28860,32 @@ class Prism::StatementsNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#17615 + # source://prism//lib/prism/node.rb#17233 def type; end end end # Flags for string nodes. # -# source://prism//lib/prism/node.rb#19352 +# source://prism//lib/prism/node.rb#18962 module Prism::StringFlags; end # internal bytes forced the encoding to binary # -# source://prism//lib/prism/node.rb#19357 +# source://prism//lib/prism/node.rb#18967 Prism::StringFlags::FORCED_BINARY_ENCODING = T.let(T.unsafe(nil), Integer) # internal bytes forced the encoding to UTF-8 # -# source://prism//lib/prism/node.rb#19354 +# source://prism//lib/prism/node.rb#18964 Prism::StringFlags::FORCED_UTF8_ENCODING = T.let(T.unsafe(nil), Integer) -# frozen by virtue of a `frozen_string_literal` comment -# -# source://prism//lib/prism/node.rb#19360 +# source://prism//lib/prism/node.rb#18970 Prism::StringFlags::FROZEN = T.let(T.unsafe(nil), Integer) +# source://prism//lib/prism/node.rb#18973 +Prism::StringFlags::MUTABLE = T.let(T.unsafe(nil), Integer) + # Represents a string literal, a string contained within a `%w` list, or plain string content within an interpolated string. # # "foo" @@ -25582,7 +28897,7 @@ Prism::StringFlags::FROZEN = T.let(T.unsafe(nil), Integer) # "foo #{bar} baz" # ^^^^ ^^^^ # -# source://prism//lib/prism/node.rb#17630 +# source://prism//lib/prism/node.rb#17248 class Prism::StringNode < ::Prism::Node include ::Prism::HeredocQuery @@ -25590,83 +28905,104 @@ class Prism::StringNode < ::Prism::Node # # @return [StringNode] a new instance of StringNode # - # source://prism//lib/prism/node.rb#17632 + # source://prism//lib/prism/node.rb#17250 + sig do + params( + source: Prism::Source, + flags: Integer, + opening_loc: T.nilable(Prism::Location), + content_loc: Prism::Location, + closing_loc: T.nilable(Prism::Location), + unescaped: String, + location: Prism::Location + ).void + end def initialize(source, flags, opening_loc, content_loc, closing_loc, unescaped, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#17644 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#17262 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17649 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17267 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#17748 + # source://prism//lib/prism/node.rb#17366 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#17707 + # source://prism//lib/prism/node.rb#17319 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#17659 + # source://prism//lib/prism/node.rb#17277 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#17654 + # source://prism//lib/prism/node.rb#17272 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end # def content: () -> String # - # source://prism//lib/prism/node.rb#17743 + # source://prism//lib/prism/node.rb#17361 sig { returns(String) } def content; end # attr_reader content_loc: Location # - # source://prism//lib/prism/node.rb#17701 + # source://prism//lib/prism/node.rb#17312 sig { returns(Prism::Location) } def content_loc; end - # def copy: (**params) -> StringNode + # def copy: (?flags: Integer, ?opening_loc: Location?, ?content_loc: Location, ?closing_loc: Location?, ?unescaped: String, ?location: Location) -> StringNode # - # source://prism//lib/prism/node.rb#17664 - sig { params(params: T.untyped).returns(Prism::StringNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#17282 + sig do + params( + flags: Integer, + opening_loc: T.nilable(Prism::Location), + content_loc: Prism::Location, + closing_loc: T.nilable(Prism::Location), + unescaped: String, + location: Prism::Location + ).returns(Prism::StringNode) + end + def copy(flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17649 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17267 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, opening_loc: Location?, content_loc: Location, closing_loc: Location?, unescaped: String, location: Location } # - # source://prism//lib/prism/node.rb#17680 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#17290 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def forced_binary_encoding?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#17728 + # source://prism//lib/prism/node.rb#17341 sig { returns(T::Boolean) } def forced_binary_encoding?; end @@ -25674,7 +29010,7 @@ class Prism::StringNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#17723 + # source://prism//lib/prism/node.rb#17336 sig { returns(T::Boolean) } def forced_utf8_encoding?; end @@ -25682,27 +29018,46 @@ class Prism::StringNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#17733 + # source://prism//lib/prism/node.rb#17346 sig { returns(T::Boolean) } def frozen?; end + sig { returns(T::Boolean) } + def heredoc?; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#17753 + # source://prism//lib/prism/node.rb#17371 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end + # def mutable?: () -> bool + # + # @return [Boolean] + # + # source://prism//lib/prism/node.rb#17351 + sig { returns(T::Boolean) } + def mutable?; end + # def opening: () -> String? # - # source://prism//lib/prism/node.rb#17738 + # source://prism//lib/prism/node.rb#17356 sig { returns(T.nilable(String)) } def opening; end # attr_reader opening_loc: Location? # - # source://prism//lib/prism/node.rb#17689 + # source://prism//lib/prism/node.rb#17299 sig { returns(T.nilable(Prism::Location)) } def opening_loc; end + # Occasionally it's helpful to treat a string as if it were interpolated so + # that there's a consistent interface for working with strings. + # + # source://prism//lib/prism/node_ext.rb#55 + sig { returns(Prism::InterpolatedStringNode) } + def to_interpolated; end + # Sometimes you want to check an instance of a node against a list of # classes to see what kind of behavior to perform. Usually this is done by # calling `[cls1, cls2].include?(node.class)` or putting the node into a @@ -25718,12 +29073,13 @@ class Prism::StringNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#17778 + # source://prism//lib/prism/node.rb#17396 + sig { override.returns(Symbol) } def type; end # attr_reader unescaped: String # - # source://prism//lib/prism/node.rb#17719 + # source://prism//lib/prism/node.rb#17332 sig { returns(String) } def unescaped; end @@ -25731,7 +29087,7 @@ class Prism::StringNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#17685 + # source://prism//lib/prism/node.rb#17295 sig { returns(Integer) } def flags; end @@ -25743,7 +29099,7 @@ class Prism::StringNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#17788 + # source://prism//lib/prism/node.rb#17406 def type; end end end @@ -25756,110 +29112,132 @@ end # super foo, bar # ^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#17800 +# source://prism//lib/prism/node.rb#17418 class Prism::SuperNode < ::Prism::Node - # def initialize: (Location keyword_loc, Location? lparen_loc, ArgumentsNode? arguments, Location? rparen_loc, Node? block, Location location) -> void + # def initialize: (Location keyword_loc, Location? lparen_loc, ArgumentsNode? arguments, Location? rparen_loc, Prism::node? block, Location location) -> void # # @return [SuperNode] a new instance of SuperNode # - # source://prism//lib/prism/node.rb#17802 + # source://prism//lib/prism/node.rb#17420 + sig do + params( + source: Prism::Source, + keyword_loc: Prism::Location, + lparen_loc: T.nilable(Prism::Location), + arguments: T.nilable(Prism::ArgumentsNode), + rparen_loc: T.nilable(Prism::Location), + block: T.nilable(Prism::Node), + location: Prism::Location + ).void + end def initialize(source, keyword_loc, lparen_loc, arguments, rparen_loc, block, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#17814 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#17432 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader arguments: ArgumentsNode? # - # source://prism//lib/prism/node.rb#17876 + # source://prism//lib/prism/node.rb#17488 sig { returns(T.nilable(Prism::ArgumentsNode)) } def arguments; end - # attr_reader block: Node? + # attr_reader block: Prism::node? # - # source://prism//lib/prism/node.rb#17891 + # source://prism//lib/prism/node.rb#17504 sig { returns(T.nilable(Prism::Node)) } def block; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17819 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17437 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#17832 + # source://prism//lib/prism/node.rb#17450 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#17824 + # source://prism//lib/prism/node.rb#17442 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> SuperNode + # def copy: (?keyword_loc: Location, ?lparen_loc: Location?, ?arguments: ArgumentsNode?, ?rparen_loc: Location?, ?block: Prism::node?, ?location: Location) -> SuperNode # - # source://prism//lib/prism/node.rb#17837 - sig { params(params: T.untyped).returns(Prism::SuperNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#17455 + sig do + params( + keyword_loc: Prism::Location, + lparen_loc: T.nilable(Prism::Location), + arguments: T.nilable(Prism::ArgumentsNode), + rparen_loc: T.nilable(Prism::Location), + block: T.nilable(Prism::Node), + location: Prism::Location + ).returns(Prism::SuperNode) + end + def copy(keyword_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), arguments: T.unsafe(nil), rparen_loc: T.unsafe(nil), block: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17819 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17437 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { keyword_loc: Location, lparen_loc: Location?, arguments: ArgumentsNode?, rparen_loc: Location?, block: Node?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { keyword_loc: Location, lparen_loc: Location?, arguments: ArgumentsNode?, rparen_loc: Location?, block: Prism::node?, location: Location } # - # source://prism//lib/prism/node.rb#17853 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#17463 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#17910 + # source://prism//lib/prism/node.rb#17523 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#17895 + # source://prism//lib/prism/node.rb#17508 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#17858 + # source://prism//lib/prism/node.rb#17468 sig { returns(Prism::Location) } def keyword_loc; end # def lparen: () -> String? # - # source://prism//lib/prism/node.rb#17900 + # source://prism//lib/prism/node.rb#17513 sig { returns(T.nilable(String)) } def lparen; end # attr_reader lparen_loc: Location? # - # source://prism//lib/prism/node.rb#17864 + # source://prism//lib/prism/node.rb#17475 sig { returns(T.nilable(Prism::Location)) } def lparen_loc; end # def rparen: () -> String? # - # source://prism//lib/prism/node.rb#17905 + # source://prism//lib/prism/node.rb#17518 sig { returns(T.nilable(String)) } def rparen; end # attr_reader rparen_loc: Location? # - # source://prism//lib/prism/node.rb#17879 + # source://prism//lib/prism/node.rb#17491 sig { returns(T.nilable(Prism::Location)) } def rparen_loc; end @@ -25878,7 +29256,8 @@ class Prism::SuperNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#17944 + # source://prism//lib/prism/node.rb#17557 + sig { override.returns(Symbol) } def type; end class << self @@ -25889,29 +29268,29 @@ class Prism::SuperNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#17954 + # source://prism//lib/prism/node.rb#17567 def type; end end end # Flags for symbol nodes. # -# source://prism//lib/prism/node.rb#19364 +# source://prism//lib/prism/node.rb#18977 module Prism::SymbolFlags; end # internal bytes forced the encoding to binary # -# source://prism//lib/prism/node.rb#19369 +# source://prism//lib/prism/node.rb#18982 Prism::SymbolFlags::FORCED_BINARY_ENCODING = T.let(T.unsafe(nil), Integer) # internal bytes forced the encoding to US-ASCII # -# source://prism//lib/prism/node.rb#19372 +# source://prism//lib/prism/node.rb#18985 Prism::SymbolFlags::FORCED_US_ASCII_ENCODING = T.let(T.unsafe(nil), Integer) # internal bytes forced the encoding to UTF-8 # -# source://prism//lib/prism/node.rb#19366 +# source://prism//lib/prism/node.rb#18979 Prism::SymbolFlags::FORCED_UTF8_ENCODING = T.let(T.unsafe(nil), Integer) # Represents a symbol literal or a symbol contained within a `%i` list. @@ -25922,77 +29301,98 @@ Prism::SymbolFlags::FORCED_UTF8_ENCODING = T.let(T.unsafe(nil), Integer) # %i[foo] # ^^^ # -# source://prism//lib/prism/node.rb#17966 +# source://prism//lib/prism/node.rb#17579 class Prism::SymbolNode < ::Prism::Node # def initialize: (Integer flags, Location? opening_loc, Location? value_loc, Location? closing_loc, String unescaped, Location location) -> void # # @return [SymbolNode] a new instance of SymbolNode # - # source://prism//lib/prism/node.rb#17968 + # source://prism//lib/prism/node.rb#17581 + sig do + params( + source: Prism::Source, + flags: Integer, + opening_loc: T.nilable(Prism::Location), + value_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + unescaped: String, + location: Prism::Location + ).void + end def initialize(source, flags, opening_loc, value_loc, closing_loc, unescaped, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#17980 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#17593 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17985 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17598 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#18090 + # source://prism//lib/prism/node.rb#17698 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#18049 + # source://prism//lib/prism/node.rb#17656 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#17995 + # source://prism//lib/prism/node.rb#17608 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#17990 + # source://prism//lib/prism/node.rb#17603 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> SymbolNode + # def copy: (?flags: Integer, ?opening_loc: Location?, ?value_loc: Location?, ?closing_loc: Location?, ?unescaped: String, ?location: Location) -> SymbolNode # - # source://prism//lib/prism/node.rb#18000 - sig { params(params: T.untyped).returns(Prism::SymbolNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#17613 + sig do + params( + flags: Integer, + opening_loc: T.nilable(Prism::Location), + value_loc: T.nilable(Prism::Location), + closing_loc: T.nilable(Prism::Location), + unescaped: String, + location: Prism::Location + ).returns(Prism::SymbolNode) + end + def copy(flags: T.unsafe(nil), opening_loc: T.unsafe(nil), value_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#17985 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17598 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, opening_loc: Location?, value_loc: Location?, closing_loc: Location?, unescaped: String, location: Location } # - # source://prism//lib/prism/node.rb#18016 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#17621 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def forced_binary_encoding?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#18070 + # source://prism//lib/prism/node.rb#17678 sig { returns(T::Boolean) } def forced_binary_encoding?; end @@ -26000,7 +29400,7 @@ class Prism::SymbolNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#18075 + # source://prism//lib/prism/node.rb#17683 sig { returns(T::Boolean) } def forced_us_ascii_encoding?; end @@ -26008,24 +29408,25 @@ class Prism::SymbolNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#18065 + # source://prism//lib/prism/node.rb#17673 sig { returns(T::Boolean) } def forced_utf8_encoding?; end # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#18095 + # source://prism//lib/prism/node.rb#17703 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String? # - # source://prism//lib/prism/node.rb#18080 + # source://prism//lib/prism/node.rb#17688 sig { returns(T.nilable(String)) } def opening; end # attr_reader opening_loc: Location? # - # source://prism//lib/prism/node.rb#18025 + # source://prism//lib/prism/node.rb#17630 sig { returns(T.nilable(Prism::Location)) } def opening_loc; end @@ -26044,24 +29445,25 @@ class Prism::SymbolNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#18120 + # source://prism//lib/prism/node.rb#17728 + sig { override.returns(Symbol) } def type; end # attr_reader unescaped: String # - # source://prism//lib/prism/node.rb#18061 + # source://prism//lib/prism/node.rb#17669 sig { returns(String) } def unescaped; end # def value: () -> String? # - # source://prism//lib/prism/node.rb#18085 + # source://prism//lib/prism/node.rb#17693 sig { returns(T.nilable(String)) } def value; end # attr_reader value_loc: Location? # - # source://prism//lib/prism/node.rb#18037 + # source://prism//lib/prism/node.rb#17643 sig { returns(T.nilable(Prism::Location)) } def value_loc; end @@ -26069,7 +29471,7 @@ class Prism::SymbolNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#18021 + # source://prism//lib/prism/node.rb#17626 sig { returns(Integer) } def flags; end @@ -26081,63 +29483,62 @@ class Prism::SymbolNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#18130 + # source://prism//lib/prism/node.rb#17738 def type; end end end # This represents a token from the Ruby source. # -# source://prism//lib/prism/parse_result.rb#454 +# source://prism//lib/prism/parse_result.rb#504 class Prism::Token # Create a new token object with the given type, value, and location. # # @return [Token] a new instance of Token # - # source://prism//lib/prism/parse_result.rb#466 + # source://prism//lib/prism/parse_result.rb#516 + sig { params(source: Prism::Source, type: Symbol, value: String, location: T.any(Integer, Prism::Location)).void } def initialize(source, type, value, location); end # Returns true if the given other token is equal to this token. # - # source://prism//lib/prism/parse_result.rb#500 + # source://prism//lib/prism/parse_result.rb#551 sig { params(other: T.untyped).returns(T::Boolean) } def ==(other); end # Implement the hash pattern matching interface for Token. # - # source://prism//lib/prism/parse_result.rb#474 - sig { params(keys: T.untyped).returns(T.untyped) } + # source://prism//lib/prism/parse_result.rb#524 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # A Location object representing the location of this token in the source. # - # source://prism//lib/prism/parse_result.rb#479 + # source://prism//lib/prism/parse_result.rb#529 sig { returns(Prism::Location) } def location; end # Implement the pretty print interface for Token. # - # source://prism//lib/prism/parse_result.rb#485 - sig { params(q: T.untyped).returns(T.untyped) } + # source://prism//lib/prism/parse_result.rb#536 + sig { params(q: T.untyped).void } def pretty_print(q); end # The type of token that this token is. # - # source://prism//lib/prism/parse_result.rb#460 - sig { returns(T.untyped) } + # source://prism//lib/prism/parse_result.rb#510 def type; end # A byteslice of the source that this token represents. # - # source://prism//lib/prism/parse_result.rb#463 - sig { returns(String) } + # source://prism//lib/prism/parse_result.rb#513 def value; end private # The Source object that represents the source this token came from. # - # source://prism//lib/prism/parse_result.rb#456 + # source://prism//lib/prism/parse_result.rb#506 def source; end end @@ -26156,47 +29557,48 @@ module Prism::Translation; end class Prism::Translation::Parser < ::Parser::Base # The default encoding for Ruby files is UTF-8. # - # source://prism//lib/prism/translation/parser.rb#33 + # source://prism//lib/prism/translation/parser.rb#36 def default_encoding; end # Parses a source buffer and returns the AST. # - # source://prism//lib/prism/translation/parser.rb#41 + # source://prism//lib/prism/translation/parser.rb#44 def parse(source_buffer); end # Parses a source buffer and returns the AST and the source code comments. # - # source://prism//lib/prism/translation/parser.rb#54 + # source://prism//lib/prism/translation/parser.rb#57 def parse_with_comments(source_buffer); end # Parses a source buffer and returns the AST, the source code comments, # and the tokens emitted by the lexer. # - # source://prism//lib/prism/translation/parser.rb#71 + # source://prism//lib/prism/translation/parser.rb#74 def tokenize(source_buffer, recover = T.unsafe(nil)); end # Since prism resolves num params for us, we don't need to support this # kind of logic here. # - # source://prism//lib/prism/translation/parser.rb#97 + # source://prism//lib/prism/translation/parser.rb#100 def try_declare_numparam(node); end - # source://prism//lib/prism/translation/parser.rb#28 + # source://prism//lib/prism/translation/parser.rb#31 + sig { overridable.returns(Integer) } def version; end - # source://prism//lib/prism/translation/parser.rb#37 + # source://prism//lib/prism/translation/parser.rb#40 def yyerror; end private # Build the parser gem AST from the prism AST. # - # source://prism//lib/prism/translation/parser.rb#146 + # source://prism//lib/prism/translation/parser.rb#258 def build_ast(program, offset_cache); end # Build the parser gem comments from the prism comments. # - # source://prism//lib/prism/translation/parser.rb#151 + # source://prism//lib/prism/translation/parser.rb#263 def build_comments(comments, offset_cache); end # Prism deals with offsets in bytes, while the parser gem deals with @@ -26207,28 +29609,33 @@ class Prism::Translation::Parser < ::Parser::Base # just use the offset directly. Otherwise, we build an array where the # index is the byte offset and the value is the character offset. # - # source://prism//lib/prism/translation/parser.rb#129 + # source://prism//lib/prism/translation/parser.rb#241 def build_offset_cache(source); end # Build a range from a prism location. # - # source://prism//lib/prism/translation/parser.rb#163 + # source://prism//lib/prism/translation/parser.rb#275 def build_range(location, offset_cache); end # Build the parser gem tokens from the prism tokens. # - # source://prism//lib/prism/translation/parser.rb#158 + # source://prism//lib/prism/translation/parser.rb#270 def build_tokens(tokens, offset_cache); end # Converts the version format handled by Parser to the format handled by Prism. # - # source://prism//lib/prism/translation/parser.rb#172 + # source://prism//lib/prism/translation/parser.rb#284 def convert_for_prism(version); end + # Build a diagnostic from the given prism parse error. + # + # source://prism//lib/prism/translation/parser.rb#119 + def error_diagnostic(error, offset_cache); end + # If there was a error generated during the parse, then raise an # appropriate syntax error. Otherwise return the result. # - # source://prism//lib/prism/translation/parser.rb#111 + # source://prism//lib/prism/translation/parser.rb#219 def unwrap(result, offset_cache); end # This is a hook to allow consumers to disable some errors if they don't @@ -26236,8 +29643,39 @@ class Prism::Translation::Parser < ::Parser::Base # # @return [Boolean] # - # source://prism//lib/prism/translation/parser.rb#105 + # source://prism//lib/prism/translation/parser.rb#108 def valid_error?(error); end + + # This is a hook to allow consumers to disable some warnings if they don't + # want them to block creating the syntax tree. + # + # @return [Boolean] + # + # source://prism//lib/prism/translation/parser.rb#114 + def valid_warning?(warning); end + + # Build a diagnostic from the given prism parse warning. + # + # source://prism//lib/prism/translation/parser.rb#192 + def warning_diagnostic(warning, offset_cache); end +end + +# This class is the entry-point for Ruby 3.3 of `Prism::Translation::Parser`. +# +# source://prism//lib/prism/translation/parser33.rb#6 +class Prism::Translation::Parser33 < ::Prism::Translation::Parser + # source://prism//lib/prism/translation/parser33.rb#7 + sig { override.returns(Integer) } + def version; end +end + +# This class is the entry-point for Ruby 3.4 of `Prism::Translation::Parser`. +# +# source://prism//lib/prism/translation/parser34.rb#6 +class Prism::Translation::Parser34 < ::Prism::Translation::Parser + # source://prism//lib/prism/translation/parser34.rb#7 + sig { override.returns(Integer) } + def version; end end # A visitor that knows how to convert a prism syntax tree into the @@ -26245,6 +29683,8 @@ end # # source://prism//lib/prism/translation/parser/compiler.rb#8 class Prism::Translation::Parser::Compiler < ::Prism::Compiler + Result = type_member { { fixed: Parser::AST::Node } } + # Initialize a new compiler with the given parser, offset cache, and # options. # @@ -26345,49 +29785,49 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # { **foo } # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#141 + # source://prism//lib/prism/translation/parser/compiler.rb#148 def visit_assoc_splat_node(node); end # $+ # ^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#151 + # source://prism//lib/prism/translation/parser/compiler.rb#158 def visit_back_reference_read_node(node); end # begin end # ^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#157 + # source://prism//lib/prism/translation/parser/compiler.rb#164 def visit_begin_node(node); end # foo(&bar) # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#195 + # source://prism//lib/prism/translation/parser/compiler.rb#202 def visit_block_argument_node(node); end # foo { |; bar| } # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#201 + # source://prism//lib/prism/translation/parser/compiler.rb#208 def visit_block_local_variable_node(node); end # A block on a keyword or method call. # # @raise [CompilationError] # - # source://prism//lib/prism/translation/parser/compiler.rb#206 + # source://prism//lib/prism/translation/parser/compiler.rb#213 def visit_block_node(node); end # def foo(&bar); end # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#212 + # source://prism//lib/prism/translation/parser/compiler.rb#219 def visit_block_parameter_node(node); end # A block's parameters. # - # source://prism//lib/prism/translation/parser/compiler.rb#217 + # source://prism//lib/prism/translation/parser/compiler.rb#224 def visit_block_parameters_node(node); end # break @@ -26396,7 +29836,7 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # break foo # ^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#226 + # source://prism//lib/prism/translation/parser/compiler.rb#233 def visit_break_node(node); end # foo.bar += baz @@ -26404,7 +29844,7 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # foo.bar &&= baz # ^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#300 + # source://prism//lib/prism/translation/parser/compiler.rb#319 def visit_call_and_write_node(node); end # foo @@ -26416,13 +29856,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # foo.bar() {} # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#238 + # source://prism//lib/prism/translation/parser/compiler.rb#245 def visit_call_node(node); end # foo.bar += baz # ^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#300 + # source://prism//lib/prism/translation/parser/compiler.rb#319 def visit_call_operator_write_node(node); end # foo.bar += baz @@ -26430,37 +29870,37 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # foo.bar ||= baz # ^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#300 + # source://prism//lib/prism/translation/parser/compiler.rb#319 def visit_call_or_write_node(node); end # foo.bar, = 1 # ^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#327 + # source://prism//lib/prism/translation/parser/compiler.rb#346 def visit_call_target_node(node); end # foo => bar => baz # ^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#339 + # source://prism//lib/prism/translation/parser/compiler.rb#358 def visit_capture_pattern_node(node); end # case foo; in bar; end # ^^^^^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#358 + # source://prism//lib/prism/translation/parser/compiler.rb#377 def visit_case_match_node(node); end # case foo; when bar; end # ^^^^^^^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#345 + # source://prism//lib/prism/translation/parser/compiler.rb#364 def visit_case_node(node); end # class Foo; end # ^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#371 + # source://prism//lib/prism/translation/parser/compiler.rb#390 def visit_class_node(node); end # @@foo += bar @@ -26468,13 +29908,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # @@foo &&= bar # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#403 + # source://prism//lib/prism/translation/parser/compiler.rb#419 def visit_class_variable_and_write_node(node); end # @@foo += bar # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#403 + # source://prism//lib/prism/translation/parser/compiler.rb#419 def visit_class_variable_operator_write_node(node); end # @@foo += bar @@ -26482,28 +29922,25 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # @@foo ||= bar # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#403 + # source://prism//lib/prism/translation/parser/compiler.rb#419 def visit_class_variable_or_write_node(node); end # @@foo # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#384 + # source://prism//lib/prism/translation/parser/compiler.rb#403 def visit_class_variable_read_node(node); end # @@foo, = bar # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#421 + # source://prism//lib/prism/translation/parser/compiler.rb#437 def visit_class_variable_target_node(node); end # @@foo = 1 # ^^^^^^^^^ # - # @@foo, @@bar = 1 - # ^^^^^ ^^^^^ - # - # source://prism//lib/prism/translation/parser/compiler.rb#393 + # source://prism//lib/prism/translation/parser/compiler.rb#409 def visit_class_variable_write_node(node); end # Foo += bar @@ -26511,13 +29948,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # Foo &&= bar # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#442 + # source://prism//lib/prism/translation/parser/compiler.rb#458 def visit_constant_and_write_node(node); end # Foo += bar # ^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#442 + # source://prism//lib/prism/translation/parser/compiler.rb#458 def visit_constant_operator_write_node(node); end # Foo += bar @@ -26525,7 +29962,7 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # Foo ||= bar # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#442 + # source://prism//lib/prism/translation/parser/compiler.rb#458 def visit_constant_or_write_node(node); end # Foo::Bar += baz @@ -26533,19 +29970,19 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # Foo::Bar &&= baz # ^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#496 + # source://prism//lib/prism/translation/parser/compiler.rb#512 def visit_constant_path_and_write_node(node); end # Foo::Bar # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#466 + # source://prism//lib/prism/translation/parser/compiler.rb#482 def visit_constant_path_node(node); end # Foo::Bar += baz # ^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#496 + # source://prism//lib/prism/translation/parser/compiler.rb#512 def visit_constant_path_operator_write_node(node); end # Foo::Bar += baz @@ -26553,13 +29990,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # Foo::Bar ||= baz # ^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#496 + # source://prism//lib/prism/translation/parser/compiler.rb#512 def visit_constant_path_or_write_node(node); end # Foo::Bar, = baz # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#514 + # source://prism//lib/prism/translation/parser/compiler.rb#530 def visit_constant_path_target_node(node); end # Foo::Bar = 1 @@ -26568,19 +30005,19 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # Foo::Foo, Bar::Bar = 1 # ^^^^^^^^ ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#486 + # source://prism//lib/prism/translation/parser/compiler.rb#502 def visit_constant_path_write_node(node); end # Foo # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#427 + # source://prism//lib/prism/translation/parser/compiler.rb#443 def visit_constant_read_node(node); end # Foo, = bar # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#460 + # source://prism//lib/prism/translation/parser/compiler.rb#476 def visit_constant_target_node(node); end # Foo = 1 @@ -26589,7 +30026,7 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # Foo, Bar = 1 # ^^^ ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#436 + # source://prism//lib/prism/translation/parser/compiler.rb#452 def visit_constant_write_node(node); end # def foo; end @@ -26598,7 +30035,7 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # def self.foo; end # ^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#523 + # source://prism//lib/prism/translation/parser/compiler.rb#539 def visit_def_node(node); end # defined? a @@ -26607,25 +30044,25 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # defined?(a) # ^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#570 + # source://prism//lib/prism/translation/parser/compiler.rb#586 def visit_defined_node(node); end # if foo then bar else baz end # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#582 + # source://prism//lib/prism/translation/parser/compiler.rb#598 def visit_else_node(node); end # "foo #{bar}" # ^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#588 + # source://prism//lib/prism/translation/parser/compiler.rb#604 def visit_embedded_statements_node(node); end # "foo #@bar" # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#598 + # source://prism//lib/prism/translation/parser/compiler.rb#614 def visit_embedded_variable_node(node); end # begin; foo; ensure; bar; end @@ -26633,19 +30070,19 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # # @raise [CompilationError] # - # source://prism//lib/prism/translation/parser/compiler.rb#604 + # source://prism//lib/prism/translation/parser/compiler.rb#620 def visit_ensure_node(node); end # false # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#610 + # source://prism//lib/prism/translation/parser/compiler.rb#626 def visit_false_node(node); end # foo => [*, bar, *] # ^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#616 + # source://prism//lib/prism/translation/parser/compiler.rb#632 def visit_find_pattern_node(node); end # 0..5 @@ -26653,31 +30090,31 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # if foo .. bar; end # ^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1302 + # source://prism//lib/prism/translation/parser/compiler.rb#1350 def visit_flip_flop_node(node); end # 1.0 # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#628 + # source://prism//lib/prism/translation/parser/compiler.rb#644 def visit_float_node(node); end # for foo in bar do end # ^^^^^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#634 + # source://prism//lib/prism/translation/parser/compiler.rb#650 def visit_for_node(node); end # def foo(...); bar(...); end # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#652 + # source://prism//lib/prism/translation/parser/compiler.rb#668 def visit_forwarding_arguments_node(node); end # def foo(...); end # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#658 + # source://prism//lib/prism/translation/parser/compiler.rb#674 def visit_forwarding_parameter_node(node); end # super @@ -26686,7 +30123,7 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # super {} # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#667 + # source://prism//lib/prism/translation/parser/compiler.rb#683 def visit_forwarding_super_node(node); end # $foo += bar @@ -26694,13 +30131,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # $foo &&= bar # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#698 + # source://prism//lib/prism/translation/parser/compiler.rb#711 def visit_global_variable_and_write_node(node); end # $foo += bar # ^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#698 + # source://prism//lib/prism/translation/parser/compiler.rb#711 def visit_global_variable_operator_write_node(node); end # $foo += bar @@ -26708,40 +30145,37 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # $foo ||= bar # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#698 + # source://prism//lib/prism/translation/parser/compiler.rb#711 def visit_global_variable_or_write_node(node); end # $foo # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#679 + # source://prism//lib/prism/translation/parser/compiler.rb#695 def visit_global_variable_read_node(node); end # $foo, = bar # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#716 + # source://prism//lib/prism/translation/parser/compiler.rb#729 def visit_global_variable_target_node(node); end # $foo = 1 # ^^^^^^^^ # - # $foo, $bar = 1 - # ^^^^ ^^^^ - # - # source://prism//lib/prism/translation/parser/compiler.rb#688 + # source://prism//lib/prism/translation/parser/compiler.rb#701 def visit_global_variable_write_node(node); end # {} # ^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#722 + # source://prism//lib/prism/translation/parser/compiler.rb#735 def visit_hash_node(node); end # foo => {} # ^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#732 + # source://prism//lib/prism/translation/parser/compiler.rb#745 def visit_hash_pattern_node(node); end # if foo then bar end @@ -26753,12 +30187,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # foo ? bar : baz # ^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#750 + # source://prism//lib/prism/translation/parser/compiler.rb#763 def visit_if_node(node); end # 1i + # ^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#791 + # source://prism//lib/prism/translation/parser/compiler.rb#805 def visit_imaginary_node(node); end # { foo: } @@ -26766,7 +30201,7 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # # @raise [CompilationError] # - # source://prism//lib/prism/translation/parser/compiler.rb#797 + # source://prism//lib/prism/translation/parser/compiler.rb#811 def visit_implicit_node(node); end # foo { |bar,| } @@ -26774,13 +30209,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # # @raise [CompilationError] # - # source://prism//lib/prism/translation/parser/compiler.rb#803 + # source://prism//lib/prism/translation/parser/compiler.rb#817 def visit_implicit_rest_node(node); end # case foo; in bar; end # ^^^^^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#809 + # source://prism//lib/prism/translation/parser/compiler.rb#823 def visit_in_node(node); end # foo[bar] += baz @@ -26788,13 +30223,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # foo[bar] &&= baz # ^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#835 + # source://prism//lib/prism/translation/parser/compiler.rb#849 def visit_index_and_write_node(node); end # foo[bar] += baz # ^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#835 + # source://prism//lib/prism/translation/parser/compiler.rb#849 def visit_index_operator_write_node(node); end # foo[bar] += baz @@ -26802,55 +30237,52 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # foo[bar] ||= baz # ^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#835 + # source://prism//lib/prism/translation/parser/compiler.rb#849 def visit_index_or_write_node(node); end # foo[bar], = 1 # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#861 + # source://prism//lib/prism/translation/parser/compiler.rb#875 def visit_index_target_node(node); end # ^^^^^^^^^^^ # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#891 + # source://prism//lib/prism/translation/parser/compiler.rb#902 def visit_instance_variable_and_write_node(node); end # ^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#891 + # source://prism//lib/prism/translation/parser/compiler.rb#902 def visit_instance_variable_operator_write_node(node); end # ^^^^^^^^^^^ # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#891 + # source://prism//lib/prism/translation/parser/compiler.rb#902 def visit_instance_variable_or_write_node(node); end # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#872 + # source://prism//lib/prism/translation/parser/compiler.rb#886 def visit_instance_variable_read_node(node); end # @foo, = bar # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#909 + # source://prism//lib/prism/translation/parser/compiler.rb#920 def visit_instance_variable_target_node(node); end # ^^^^^^^^ # - # @foo, @bar = 1 - # ^^^^ ^^^^ - # - # source://prism//lib/prism/translation/parser/compiler.rb#881 + # source://prism//lib/prism/translation/parser/compiler.rb#892 def visit_instance_variable_write_node(node); end # 1 # ^ # - # source://prism//lib/prism/translation/parser/compiler.rb#915 + # source://prism//lib/prism/translation/parser/compiler.rb#926 def visit_integer_node(node); end # /foo #{bar}/ @@ -26858,37 +30290,37 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # if /foo #{bar}/ then end # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#921 + # source://prism//lib/prism/translation/parser/compiler.rb#932 def visit_interpolated_match_last_line_node(node); end # /foo #{bar}/ # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#921 + # source://prism//lib/prism/translation/parser/compiler.rb#932 def visit_interpolated_regular_expression_node(node); end # "foo #{bar}" # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#936 + # source://prism//lib/prism/translation/parser/compiler.rb#947 def visit_interpolated_string_node(node); end # :"foo #{bar}" # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#951 + # source://prism//lib/prism/translation/parser/compiler.rb#1010 def visit_interpolated_symbol_node(node); end # `foo #{bar}` # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#961 + # source://prism//lib/prism/translation/parser/compiler.rb#1020 def visit_interpolated_x_string_node(node); end # foo(bar: baz) # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#976 + # source://prism//lib/prism/translation/parser/compiler.rb#1035 def visit_keyword_hash_node(node); end # def foo(**bar); end @@ -26897,12 +30329,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # def foo(**); end # ^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#985 + # source://prism//lib/prism/translation/parser/compiler.rb#1044 def visit_keyword_rest_parameter_node(node); end # -> {} + # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#993 + # source://prism//lib/prism/translation/parser/compiler.rb#1053 def visit_lambda_node(node); end # foo += bar @@ -26910,13 +30343,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # foo &&= bar # ^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1037 + # source://prism//lib/prism/translation/parser/compiler.rb#1094 def visit_local_variable_and_write_node(node); end # foo += bar # ^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1037 + # source://prism//lib/prism/translation/parser/compiler.rb#1094 def visit_local_variable_operator_write_node(node); end # foo += bar @@ -26924,28 +30357,25 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # foo ||= bar # ^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1037 + # source://prism//lib/prism/translation/parser/compiler.rb#1094 def visit_local_variable_or_write_node(node); end # foo # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1018 + # source://prism//lib/prism/translation/parser/compiler.rb#1078 def visit_local_variable_read_node(node); end # foo, = bar # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1055 + # source://prism//lib/prism/translation/parser/compiler.rb#1112 def visit_local_variable_target_node(node); end # foo = 1 # ^^^^^^^ # - # foo, bar = 1 - # ^^^ ^^^ - # - # source://prism//lib/prism/translation/parser/compiler.rb#1027 + # source://prism//lib/prism/translation/parser/compiler.rb#1084 def visit_local_variable_write_node(node); end # /foo/ @@ -26953,47 +30383,50 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # if /foo/ then end # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1336 + # source://prism//lib/prism/translation/parser/compiler.rb#1384 def visit_match_last_line_node(node); end - # source://prism//lib/prism/translation/parser/compiler.rb#1066 + # foo in bar + # ^^^^^^^^^^ + # + # source://prism//lib/prism/translation/parser/compiler.rb#1122 def visit_match_predicate_node(node); end # foo => bar # ^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1085 + # source://prism//lib/prism/translation/parser/compiler.rb#1132 def visit_match_required_node(node); end # /(?foo)/ =~ bar # ^^^^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1095 + # source://prism//lib/prism/translation/parser/compiler.rb#1142 def visit_match_write_node(node); end # A node that is missing from the syntax tree. This is only used in the # case of a syntax error. The parser gem doesn't have such a concept, so # we invent our own here. # - # source://prism//lib/prism/translation/parser/compiler.rb#1106 + # source://prism//lib/prism/translation/parser/compiler.rb#1153 def visit_missing_node(node); end # module Foo; end # ^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1112 + # source://prism//lib/prism/translation/parser/compiler.rb#1159 def visit_module_node(node); end # foo, bar = baz # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1123 + # source://prism//lib/prism/translation/parser/compiler.rb#1170 def visit_multi_target_node(node); end # foo, bar = baz # ^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1137 + # source://prism//lib/prism/translation/parser/compiler.rb#1184 def visit_multi_write_node(node); end # next @@ -27002,55 +30435,55 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # next foo # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1158 + # source://prism//lib/prism/translation/parser/compiler.rb#1205 def visit_next_node(node); end # nil # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1170 + # source://prism//lib/prism/translation/parser/compiler.rb#1217 def visit_nil_node(node); end # def foo(**nil); end # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1176 + # source://prism//lib/prism/translation/parser/compiler.rb#1223 def visit_no_keywords_parameter_node(node); end # -> { _1 + _2 } # ^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1186 + # source://prism//lib/prism/translation/parser/compiler.rb#1233 def visit_numbered_parameters_node(node); end # $1 # ^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1192 + # source://prism//lib/prism/translation/parser/compiler.rb#1239 def visit_numbered_reference_read_node(node); end # def foo(bar: baz); end # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1198 + # source://prism//lib/prism/translation/parser/compiler.rb#1245 def visit_optional_keyword_parameter_node(node); end # def foo(bar = 1); end # ^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1204 + # source://prism//lib/prism/translation/parser/compiler.rb#1251 def visit_optional_parameter_node(node); end # a or b # ^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1210 + # source://prism//lib/prism/translation/parser/compiler.rb#1257 def visit_or_node(node); end # def foo(bar, *baz); end # ^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1216 + # source://prism//lib/prism/translation/parser/compiler.rb#1263 def visit_parameters_node(node); end # () @@ -27059,76 +30492,76 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # (1) # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1255 + # source://prism//lib/prism/translation/parser/compiler.rb#1302 def visit_parentheses_node(node); end # foo => ^(bar) # ^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1265 + # source://prism//lib/prism/translation/parser/compiler.rb#1312 def visit_pinned_expression_node(node); end # foo = 1 and bar => ^foo # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1271 + # source://prism//lib/prism/translation/parser/compiler.rb#1319 def visit_pinned_variable_node(node); end # END {} # - # source://prism//lib/prism/translation/parser/compiler.rb#1276 + # source://prism//lib/prism/translation/parser/compiler.rb#1324 def visit_post_execution_node(node); end # BEGIN {} # - # source://prism//lib/prism/translation/parser/compiler.rb#1286 + # source://prism//lib/prism/translation/parser/compiler.rb#1334 def visit_pre_execution_node(node); end # The top-level program node. # - # source://prism//lib/prism/translation/parser/compiler.rb#1296 + # source://prism//lib/prism/translation/parser/compiler.rb#1344 def visit_program_node(node); end # 0..5 # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1302 + # source://prism//lib/prism/translation/parser/compiler.rb#1350 def visit_range_node(node); end # 1r # ^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1324 + # source://prism//lib/prism/translation/parser/compiler.rb#1372 def visit_rational_node(node); end # redo # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1330 + # source://prism//lib/prism/translation/parser/compiler.rb#1378 def visit_redo_node(node); end # /foo/ # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1336 + # source://prism//lib/prism/translation/parser/compiler.rb#1384 def visit_regular_expression_node(node); end # def foo(bar:); end # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1351 + # source://prism//lib/prism/translation/parser/compiler.rb#1399 def visit_required_keyword_parameter_node(node); end # def foo(bar); end # ^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1357 + # source://prism//lib/prism/translation/parser/compiler.rb#1405 def visit_required_parameter_node(node); end # foo rescue bar # ^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1363 + # source://prism//lib/prism/translation/parser/compiler.rb#1411 def visit_rescue_modifier_node(node); end # begin; rescue; end @@ -27136,7 +30569,7 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # # @raise [CompilationError] # - # source://prism//lib/prism/translation/parser/compiler.rb#1381 + # source://prism//lib/prism/translation/parser/compiler.rb#1429 def visit_rescue_node(node); end # def foo(*bar); end @@ -27145,13 +30578,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # def foo(*); end # ^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1390 + # source://prism//lib/prism/translation/parser/compiler.rb#1438 def visit_rest_parameter_node(node); end # retry # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1396 + # source://prism//lib/prism/translation/parser/compiler.rb#1444 def visit_retry_node(node); end # return @@ -27160,37 +30593,42 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # return 1 # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1405 + # source://prism//lib/prism/translation/parser/compiler.rb#1453 def visit_return_node(node); end # self # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1417 + # source://prism//lib/prism/translation/parser/compiler.rb#1465 def visit_self_node(node); end + # A shareable constant. + # + # source://prism//lib/prism/translation/parser/compiler.rb#1470 + def visit_shareable_constant_node(node); end + # class << self; end # ^^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1423 + # source://prism//lib/prism/translation/parser/compiler.rb#1476 def visit_singleton_class_node(node); end # __ENCODING__ # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1435 + # source://prism//lib/prism/translation/parser/compiler.rb#1488 def visit_source_encoding_node(node); end # __FILE__ # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1441 + # source://prism//lib/prism/translation/parser/compiler.rb#1494 def visit_source_file_node(node); end # __LINE__ # ^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1447 + # source://prism//lib/prism/translation/parser/compiler.rb#1500 def visit_source_line_node(node); end # foo(*bar) @@ -27202,42 +30640,42 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # def foo(*); bar(*); end # ^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1459 + # source://prism//lib/prism/translation/parser/compiler.rb#1512 def visit_splat_node(node); end # A list of statements. # - # source://prism//lib/prism/translation/parser/compiler.rb#1472 + # source://prism//lib/prism/translation/parser/compiler.rb#1525 def visit_statements_node(node); end # "foo" # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1478 + # source://prism//lib/prism/translation/parser/compiler.rb#1531 def visit_string_node(node); end # super(foo) # ^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1495 + # source://prism//lib/prism/translation/parser/compiler.rb#1572 def visit_super_node(node); end # :foo # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1518 + # source://prism//lib/prism/translation/parser/compiler.rb#1595 def visit_symbol_node(node); end # true # ^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1536 + # source://prism//lib/prism/translation/parser/compiler.rb#1627 def visit_true_node(node); end # undef foo # ^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1542 + # source://prism//lib/prism/translation/parser/compiler.rb#1633 def visit_undef_node(node); end # unless foo; bar end @@ -27246,7 +30684,7 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # bar unless foo # ^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1551 + # source://prism//lib/prism/translation/parser/compiler.rb#1642 def visit_unless_node(node); end # until foo; bar end @@ -27255,13 +30693,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # bar until foo # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1581 + # source://prism//lib/prism/translation/parser/compiler.rb#1672 def visit_until_node(node); end # case foo; when bar; end # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1603 + # source://prism//lib/prism/translation/parser/compiler.rb#1694 def visit_when_node(node); end # while foo; bar end @@ -27270,13 +30708,13 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # bar while foo # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1617 + # source://prism//lib/prism/translation/parser/compiler.rb#1712 def visit_while_node(node); end # `foo` # ^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1639 + # source://prism//lib/prism/translation/parser/compiler.rb#1734 def visit_x_string_node(node); end # yield @@ -27285,7 +30723,7 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # yield 1 # ^^^^^^^ # - # source://prism//lib/prism/translation/parser/compiler.rb#1657 + # source://prism//lib/prism/translation/parser/compiler.rb#1766 def visit_yield_node(node); end private @@ -27293,65 +30731,86 @@ class Prism::Translation::Parser::Compiler < ::Prism::Compiler # Initialize a new compiler with the given option overrides, used to # visit a subtree with the given options. # - # source://prism//lib/prism/translation/parser/compiler.rb#1671 + # source://prism//lib/prism/translation/parser/compiler.rb#1780 def copy_compiler(forwarding: T.unsafe(nil), in_destructure: T.unsafe(nil), in_pattern: T.unsafe(nil)); end # When *, **, &, or ... are used as an argument in a method call, we # check if they were allowed by the current context. To determine that # we build this lookup table. # - # source://prism//lib/prism/translation/parser/compiler.rb#1678 + # source://prism//lib/prism/translation/parser/compiler.rb#1787 def find_forwarding(node); end + # Because we have mutated the AST to allow for newlines in the middle of + # a rational, we need to manually handle the value here. + # + # source://prism//lib/prism/translation/parser/compiler.rb#1801 + def imaginary_value(node); end + + # Negate the value of a numeric node. This is a special case where you + # have a negative sign on one line and then a number on the next line. + # In normal Ruby, this will always be a method call. The parser gem, + # however, marks this as a numeric literal. We have to massage the tree + # here to get it into the correct form. + # + # source://prism//lib/prism/translation/parser/compiler.rb#1810 + def numeric_negate(message_loc, receiver); end + # Blocks can have a special set of parameters that automatically expand # when given arrays if they have a single required parameter and no # other parameters. # # @return [Boolean] # - # source://prism//lib/prism/translation/parser/compiler.rb#1693 + # source://prism//lib/prism/translation/parser/compiler.rb#1822 def procarg0?(parameters); end + # Because we have mutated the AST to allow for newlines in the middle of + # a rational, we need to manually handle the value here. + # + # source://prism//lib/prism/translation/parser/compiler.rb#1835 + def rational_value(node); end + # Constructs a new source range from the given start and end offsets. # - # source://prism//lib/prism/translation/parser/compiler.rb#1710 + # source://prism//lib/prism/translation/parser/compiler.rb#1849 def srange(location); end # Constructs a new source range by finding the given tokens between the # given start offset and end offset. If the needle is not found, it # returns nil. # - # source://prism//lib/prism/translation/parser/compiler.rb#1722 + # source://prism//lib/prism/translation/parser/compiler.rb#1861 def srange_find(start_offset, end_offset, tokens); end # Constructs a new source range from the given start and end offsets. # - # source://prism//lib/prism/translation/parser/compiler.rb#1715 + # source://prism//lib/prism/translation/parser/compiler.rb#1854 def srange_offsets(start_offset, end_offset); end # Transform a location into a token that the parser gem expects. # - # source://prism//lib/prism/translation/parser/compiler.rb#1731 + # source://prism//lib/prism/translation/parser/compiler.rb#1870 def token(location); end # Visit a block node on a call. # - # source://prism//lib/prism/translation/parser/compiler.rb#1736 + # source://prism//lib/prism/translation/parser/compiler.rb#1875 def visit_block(call, block); end # Visit a heredoc that can be either a string or an xstring. # - # source://prism//lib/prism/translation/parser/compiler.rb#1769 + # source://prism//lib/prism/translation/parser/compiler.rb#1908 def visit_heredoc(node); end # Visit a numeric node and account for the optional sign. # - # source://prism//lib/prism/translation/parser/compiler.rb#1815 + # source://prism//lib/prism/translation/parser/compiler.rb#1954 def visit_numeric(node, value); end # Within the given block, track that we're within a pattern. # - # source://prism//lib/prism/translation/parser/compiler.rb#1827 + # source://prism//lib/prism/translation/parser/compiler.rb#1966 def within_pattern; end end @@ -27364,27 +30823,11 @@ class Prism::Translation::Parser::Compiler::CompilationError < ::StandardError; # store a reference to its constant to make it slightly faster to look # up. # -# source://prism//lib/prism/translation/parser/compiler.rb#1707 +# source://prism//lib/prism/translation/parser/compiler.rb#1846 Prism::Translation::Parser::Compiler::Range = Parser::Source::Range -# The parser gem has a list of diagnostics with a hard-coded set of error -# messages. We create our own diagnostic class in order to set our own -# error messages. -# -# source://prism//lib/prism/translation/parser.rb#15 -class Prism::Translation::Parser::Diagnostic < ::Parser::Diagnostic - # Initialize a new diagnostic with the given message and location. - # - # @return [Diagnostic] a new instance of Diagnostic - # - # source://prism//lib/prism/translation/parser.rb#20 - def initialize(message, location); end - - # The message generated by prism. - # - # source://prism//lib/prism/translation/parser.rb#17 - def message; end -end +# source://prism//lib/prism/translation/parser.rb#12 +Prism::Translation::Parser::Diagnostic = Parser::Diagnostic # Accepts a list of prism tokens and converts them into the expected # format for the parser gem. @@ -27396,43 +30839,68 @@ class Prism::Translation::Parser::Lexer # # @return [Lexer] a new instance of Lexer # - # source://prism//lib/prism/translation/parser/lexer.rb#193 + # source://prism//lib/prism/translation/parser/lexer.rb#204 def initialize(source_buffer, lexed, offset_cache); end - # An array of prism tokens that we lexed. + # An array of tuples that contain prism tokens and their associated lex + # state when they were lexed. # - # source://prism//lib/prism/translation/parser/lexer.rb#186 + # source://prism//lib/prism/translation/parser/lexer.rb#197 def lexed; end # A hash that maps offsets in bytes to offsets in characters. # - # source://prism//lib/prism/translation/parser/lexer.rb#189 + # source://prism//lib/prism/translation/parser/lexer.rb#200 def offset_cache; end # The Parser::Source::Buffer that the tokens were lexed from. # - # source://prism//lib/prism/translation/parser/lexer.rb#183 + # source://prism//lib/prism/translation/parser/lexer.rb#193 def source_buffer; end # Convert the prism tokens into the expected format for the parser gem. # - # source://prism//lib/prism/translation/parser/lexer.rb#203 + # source://prism//lib/prism/translation/parser/lexer.rb#214 def to_a; end private # Parse a complex from the string representation. # - # source://prism//lib/prism/translation/parser/lexer.rb#310 + # source://prism//lib/prism/translation/parser/lexer.rb#387 def parse_complex(value); end + # Parse a float from the string representation. + # + # source://prism//lib/prism/translation/parser/lexer.rb#380 + def parse_float(value); end + + # Parse an integer from the string representation. + # + # source://prism//lib/prism/translation/parser/lexer.rb#373 + def parse_integer(value); end + # Parse a rational from the string representation. # - # source://prism//lib/prism/translation/parser/lexer.rb#323 + # source://prism//lib/prism/translation/parser/lexer.rb#402 def parse_rational(value); end end -# source://prism//lib/prism/translation/parser/lexer.rb#199 +# These constants represent flags in our lex state. We really, really +# don't want to be using them and we really, really don't want to be +# exposing them as part of our public API. Unfortunately, we don't have +# another way of matching the exact tokens that the parser gem expects +# without them. We should find another way to do this, but in the +# meantime we'll hide them from the documentation and mark them as +# private constants. +# +# source://prism//lib/prism/translation/parser/lexer.rb#187 +Prism::Translation::Parser::Lexer::EXPR_BEG = T.let(T.unsafe(nil), Integer) + +# source://prism//lib/prism/translation/parser/lexer.rb#188 +Prism::Translation::Parser::Lexer::EXPR_LABEL = T.let(T.unsafe(nil), Integer) + +# source://prism//lib/prism/translation/parser/lexer.rb#210 Prism::Translation::Parser::Lexer::Range = Parser::Source::Range # The direct translating of types between the two lexers. @@ -27440,267 +30908,1091 @@ Prism::Translation::Parser::Lexer::Range = Parser::Source::Range # source://prism//lib/prism/translation/parser/lexer.rb#10 Prism::Translation::Parser::Lexer::TYPES = T.let(T.unsafe(nil), Hash) -# source://prism//lib/prism/translation/parser.rb#26 +# The parser gem has a list of diagnostics with a hard-coded set of error +# messages. We create our own diagnostic class in order to set our own +# error messages. +# +# source://prism//lib/prism/translation/parser.rb#18 +class Prism::Translation::Parser::PrismDiagnostic < ::Parser::Diagnostic + # Initialize a new diagnostic with the given message and location. + # + # @return [PrismDiagnostic] a new instance of PrismDiagnostic + # + # source://prism//lib/prism/translation/parser.rb#23 + def initialize(message, level, reason, location); end + + # This is the cached message coming from prism. + # + # source://prism//lib/prism/translation/parser.rb#20 + def message; end +end + +# source://prism//lib/prism/translation/parser.rb#29 Prism::Translation::Parser::Racc_debug_parser = T.let(T.unsafe(nil), FalseClass) -# Note: This integration is not finished, and therefore still has many -# inconsistencies with Ripper. If you'd like to help out, pull requests would -# be greatly appreciated! -# -# This class is meant to provide a compatibility layer between prism and -# Ripper. It functions by parsing the entire tree first and then walking it -# and executing each of the Ripper callbacks as it goes. -# -# This class is going to necessarily be slower than the native Ripper API. It -# is meant as a stopgap until developers migrate to using prism. It is also -# meant as a test harness for the prism parser. +# This class provides a compatibility layer between prism and Ripper. It +# functions by parsing the entire tree first and then walking it and +# executing each of the Ripper callbacks as it goes. To use this class, you +# treat `Prism::Translation::Ripper` effectively as you would treat the +# `Ripper` class. +# +# Note that this class will serve the most common use cases, but Ripper's +# API is extensive and undocumented. It relies on reporting the state of the +# parser at any given time. We do our best to replicate that here, but +# because it is a different architecture it is not possible to perfectly +# replicate the behavior of Ripper. +# +# The main known difference is that we may omit dispatching some events in +# some cases. This impacts the following events: +# +# * on_assign_error +# * on_comma +# * on_ignored_nl +# * on_ignored_sp +# * on_kw +# * on_label_end +# * on_lbrace +# * on_lbracket +# * on_lparen +# * on_nl +# * on_op +# * on_operator_ambiguous +# * on_rbrace +# * on_rbracket +# * on_rparen +# * on_semicolon +# * on_sp +# * on_symbeg +# * on_tstring_beg +# * on_tstring_end # -# To use this class, you treat `Prism::Translation::Ripper` effectively as you would -# treat the `Ripper` class. -# -# source://prism//lib/prism/translation/ripper.rb#21 +# source://prism//lib/prism/translation/ripper.rb#43 class Prism::Translation::Ripper < ::Prism::Compiler # Create a new Translation::Ripper object with the given source. # # @return [Ripper] a new instance of Ripper # - # source://prism//lib/prism/translation/ripper.rb#75 - def initialize(source); end + # source://prism//lib/prism/translation/ripper.rb#444 + def initialize(source, filename = T.unsafe(nil), lineno = T.unsafe(nil)); end # The current column number of the parser. # - # source://prism//lib/prism/translation/ripper.rb#72 + # source://prism//lib/prism/translation/ripper.rb#441 def column; end # True if the parser encountered an error during parsing. # # @return [Boolean] # - # source://prism//lib/prism/translation/ripper.rb#87 + # source://prism//lib/prism/translation/ripper.rb#457 + sig { returns(T::Boolean) } def error?; end + # The filename of the source being parsed. + # + # source://prism//lib/prism/translation/ripper.rb#435 + def filename; end + # The current line number of the parser. # - # source://prism//lib/prism/translation/ripper.rb#69 + # source://prism//lib/prism/translation/ripper.rb#438 def lineno; end # Parse the source and return the result. # - # source://prism//lib/prism/translation/ripper.rb#92 + # source://prism//lib/prism/translation/ripper.rb#462 + sig { returns(T.nilable(Result)) } def parse; end # The source that is being parsed. # - # source://prism//lib/prism/translation/ripper.rb#66 + # source://prism//lib/prism/translation/ripper.rb#432 def source; end - # Visit an AliasGlobalVariableNode. + # alias $foo $bar + # ^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#247 + # source://prism//lib/prism/translation/ripper.rb#561 def visit_alias_global_variable_node(node); end - # Visit an AliasMethodNode. + # alias foo bar + # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#226 + # source://prism//lib/prism/translation/ripper.rb#551 def visit_alias_method_node(node); end - # Visit an AndNode. + # foo => bar | baz + # ^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#585 + def visit_alternation_pattern_node(node); end + + # a and b + # ^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#264 + # source://prism//lib/prism/translation/ripper.rb#605 def visit_and_node(node); end - # Visit an ArrayNode node. + # foo(bar) + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#796 + def visit_arguments_node(node); end + + # [] + # ^^ # - # source://prism//lib/prism/translation/ripper.rb#113 + # source://prism//lib/prism/translation/ripper.rb#615 def visit_array_node(node); end - # Visit a BackReferenceReadNode. + # foo => [bar] + # ^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#775 + def visit_array_pattern_node(node); end + + # { a: 1 } + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#803 + def visit_assoc_node(node); end + + # def foo(**); bar(**); end + # ^^ + # + # { **foo } + # ^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#816 + def visit_assoc_splat_node(node); end + + # $+ + # ^^ # - # source://prism//lib/prism/translation/ripper.rb#258 + # source://prism//lib/prism/translation/ripper.rb#825 def visit_back_reference_read_node(node); end - # Visit a BeginNode node. - # This is not at all bulletproof against different structures of begin/rescue/else/ensure/end. + # begin end + # ^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#315 + # source://prism//lib/prism/translation/ripper.rb#832 def visit_begin_node(node); end + # foo(&bar) + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#896 + def visit_block_argument_node(node); end + + # foo { |; bar| } + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#902 + def visit_block_local_variable_node(node); end + # Visit a BlockNode. # - # source://prism//lib/prism/translation/ripper.rb#191 + # source://prism//lib/prism/translation/ripper.rb#908 def visit_block_node(node); end - # Visit a BlockParametersNode. + # def foo(&bar); end + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#944 + def visit_block_parameter_node(node); end + + # A block's parameters. # - # source://prism//lib/prism/translation/ripper.rb#200 + # source://prism//lib/prism/translation/ripper.rb#958 def visit_block_parameters_node(node); end - # Visit a BreakNode. + # break + # ^^^^^ + # + # break foo + # ^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#218 + # source://prism//lib/prism/translation/ripper.rb#982 def visit_break_node(node); end - # Visit a CallNode node. - # Ripper distinguishes between many different method-call - # nodes -- unary and binary operators, "command" calls with - # no parentheses, and call/fcall/vcall. + # foo.bar &&= baz + # ^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1194 + def visit_call_and_write_node(node); end + + # foo + # ^^^ + # + # foo.bar + # ^^^^^^^ + # + # foo.bar() {} + # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#123 + # source://prism//lib/prism/translation/ripper.rb#1002 def visit_call_node(node); end - # Visit an EmbeddedStatementsNode node. + # foo.bar += baz + # ^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#371 - def visit_embedded_statements_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1172 + def visit_call_operator_write_node(node); end - # Visit a FalseNode. + # foo.bar ||= baz + # ^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#280 - def visit_false_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1216 + def visit_call_or_write_node(node); end - # Visit a FloatNode node. + # foo.bar, = 1 + # ^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#286 - def visit_float_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1238 + def visit_call_target_node(node); end - # Visit a GlobalVariableReadNode. + # foo => bar => baz + # ^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#252 - def visit_global_variable_read_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1263 + def visit_capture_pattern_node(node); end - # Visit a ImaginaryNode node. + # case foo; in bar; end + # ^^^^^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#291 - def visit_imaginary_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1286 + def visit_case_match_node(node); end - # Visit an IntegerNode node. + # case foo; when bar; end + # ^^^^^^^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#296 - def visit_integer_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1273 + def visit_case_node(node); end - # Visit an InterpolatedStringNode node. + # class Foo; end + # ^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#366 - def visit_interpolated_string_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1299 + def visit_class_node(node); end - # Visit an InterpolatedSymbolNode node. + # @@foo &&= bar + # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#381 - def visit_interpolated_symbol_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1352 + def visit_class_variable_and_write_node(node); end - # Visit a LocalVariableAndWriteNode. + # @@foo += bar + # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#168 - def visit_local_variable_and_write_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1338 + def visit_class_variable_operator_write_node(node); end - # Visit nodes for +=, *=, -=, etc., called LocalVariableOperatorWriteNodes. + # @@foo ||= bar + # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#178 - def visit_local_variable_operator_write_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1366 + def visit_class_variable_or_write_node(node); end - # Visit a LocalVariableOrWriteNode. + # @@foo + # ^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#173 - def visit_local_variable_or_write_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1317 + def visit_class_variable_read_node(node); end - # Visit a LocalVariableReadNode. + # @@foo, = bar + # ^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#183 - def visit_local_variable_read_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1380 + def visit_class_variable_target_node(node); end - # Visit a LocalVariableWriteNode. + # @@foo = 1 + # ^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#161 - def visit_local_variable_write_node(node); end + # @@foo, @@bar = 1 + # ^^^^^ ^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1327 + def visit_class_variable_write_node(node); end - # Visit an OrNode. + # Foo &&= bar + # ^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#269 - def visit_or_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1422 + def visit_constant_and_write_node(node); end - # Visit a ParametersNode. - # This will require expanding as we support more kinds of parameters. + # Foo += bar + # ^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#206 - def visit_parameters_node(node); end + # source://prism//lib/prism/translation/ripper.rb#1408 + def visit_constant_operator_write_node(node); end - # Visit a ParenthesesNode node. + # Foo ||= bar + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1436 + def visit_constant_or_write_node(node); end + + # Foo::Bar &&= baz + # ^^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1523 + def visit_constant_path_and_write_node(node); end + + # Foo::Bar + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1457 + def visit_constant_path_node(node); end + + # Foo::Bar += baz + # ^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1509 + def visit_constant_path_operator_write_node(node); end + + # Foo::Bar ||= baz + # ^^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1537 + def visit_constant_path_or_write_node(node); end + + # Foo::Bar, = baz + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1551 + def visit_constant_path_target_node(node); end + + # Foo::Bar = 1 + # ^^^^^^^^^^^^ + # + # Foo::Foo, Bar::Bar = 1 + # ^^^^^^^^ ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1480 + def visit_constant_path_write_node(node); end + + # Foo + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1387 + def visit_constant_read_node(node); end + + # Foo, = bar + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1450 + def visit_constant_target_node(node); end + + # Foo = 1 + # ^^^^^^^ + # + # Foo, Bar = 1 + # ^^^ ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1397 + def visit_constant_write_node(node); end + + # def foo; end + # ^^^^^^^^^^^^ + # + # def self.foo; end + # ^^^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1560 + def visit_def_node(node); end + + # defined? a + # ^^^^^^^^^^ + # + # defined?(a) + # ^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1607 + def visit_defined_node(node); end + + # if foo then bar else baz end + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1614 + def visit_else_node(node); end + + # "foo #{bar}" + # ^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1630 + def visit_embedded_statements_node(node); end + + # "foo #@bar" + # ^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1651 + def visit_embedded_variable_node(node); end + + # Visit an EnsureNode node. + # + # source://prism//lib/prism/translation/ripper.rb#1662 + def visit_ensure_node(node); end + + # false + # ^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1680 + def visit_false_node(node); end + + # foo => [*, bar, *] + # ^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1687 + def visit_find_pattern_node(node); end + + # if foo .. bar; end + # ^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1712 + def visit_flip_flop_node(node); end + + # 1.0 + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1726 + def visit_float_node(node); end + + # for foo in bar do end + # ^^^^^^^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1732 + def visit_for_node(node); end + + # def foo(...); bar(...); end + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1749 + def visit_forwarding_arguments_node(node); end + + # def foo(...); end + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1756 + def visit_forwarding_parameter_node(node); end + + # super + # ^^^^^ + # + # super {} + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1766 + def visit_forwarding_super_node(node); end + + # $foo &&= bar + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1815 + def visit_global_variable_and_write_node(node); end + + # $foo += bar + # ^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1801 + def visit_global_variable_operator_write_node(node); end + + # $foo ||= bar + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1829 + def visit_global_variable_or_write_node(node); end + + # $foo + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1780 + def visit_global_variable_read_node(node); end + + # $foo, = bar + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1843 + def visit_global_variable_target_node(node); end + + # $foo = 1 + # ^^^^^^^^ + # + # $foo, $bar = 1 + # ^^^^ ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1790 + def visit_global_variable_write_node(node); end + + # {} + # ^^ + # + # source://prism//lib/prism/translation/ripper.rb#1850 + def visit_hash_node(node); end + + # foo => {} + # ^^ + # + # source://prism//lib/prism/translation/ripper.rb#1865 + def visit_hash_pattern_node(node); end + + # if foo then bar end + # ^^^^^^^^^^^^^^^^^^^ + # + # bar if foo + # ^^^^^^^^^^ + # + # foo ? bar : baz + # ^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1907 + def visit_if_node(node); end + + # 1i + # ^^ + # + # source://prism//lib/prism/translation/ripper.rb#1943 + def visit_imaginary_node(node); end + + # { foo: } + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1949 + def visit_implicit_node(node); end + + # foo { |bar,| } + # ^ + # + # source://prism//lib/prism/translation/ripper.rb#1954 + def visit_implicit_rest_node(node); end + + # case foo; in bar; end + # ^^^^^^^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1961 + def visit_in_node(node); end + + # foo[bar] &&= baz + # ^^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1996 + def visit_index_and_write_node(node); end + + # foo[bar] += baz + # ^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#1979 + def visit_index_operator_write_node(node); end + + # foo[bar] ||= baz + # ^^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2013 + def visit_index_or_write_node(node); end + + # foo[bar], = 1 + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2030 + def visit_index_target_node(node); end + + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2072 + def visit_instance_variable_and_write_node(node); end + + # ^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2058 + def visit_instance_variable_operator_write_node(node); end + + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2086 + def visit_instance_variable_or_write_node(node); end + + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2040 + def visit_instance_variable_read_node(node); end + + # @foo, = bar + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2100 + def visit_instance_variable_target_node(node); end + + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2047 + def visit_instance_variable_write_node(node); end + + # 1 + # ^ + # + # source://prism//lib/prism/translation/ripper.rb#2107 + def visit_integer_node(node); end + + # if /foo #{bar}/ then end + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2113 + def visit_interpolated_match_last_line_node(node); end + + # /foo #{bar}/ + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2132 + def visit_interpolated_regular_expression_node(node); end + + # "foo #{bar}" + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2151 + def visit_interpolated_string_node(node); end + + # :"foo #{bar}" + # ^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2179 + def visit_interpolated_symbol_node(node); end + + # `foo #{bar}` + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2192 + def visit_interpolated_x_string_node(node); end + + # -> { it } + # ^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2222 + def visit_it_parameters_node(node); end + + # foo(bar: baz) + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2227 + def visit_keyword_hash_node(node); end + + # def foo(**bar); end + # ^^^^^ + # + # def foo(**); end + # ^^ + # + # source://prism//lib/prism/translation/ripper.rb#2239 + def visit_keyword_rest_parameter_node(node); end + + # -> {} + # + # source://prism//lib/prism/translation/ripper.rb#2253 + def visit_lambda_node(node); end + + # foo &&= bar + # ^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2350 + def visit_local_variable_and_write_node(node); end + + # foo += bar + # ^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2336 + def visit_local_variable_operator_write_node(node); end + + # foo ||= bar + # ^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2364 + def visit_local_variable_or_write_node(node); end + + # foo + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2313 + def visit_local_variable_read_node(node); end + + # foo, = bar + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2378 + def visit_local_variable_target_node(node); end + + # foo = 1 + # ^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2325 + def visit_local_variable_write_node(node); end + + # if /foo/ then end + # ^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2385 + def visit_match_last_line_node(node); end + + # foo in bar + # ^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2400 + def visit_match_predicate_node(node); end + + # foo => bar + # ^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2409 + def visit_match_required_node(node); end + + # /(?foo)/ =~ bar + # ^^^^^^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2418 + def visit_match_write_node(node); end + + # A node that is missing from the syntax tree. This is only used in the + # case of a syntax error. + # + # source://prism//lib/prism/translation/ripper.rb#2424 + def visit_missing_node(node); end + + # module Foo; end + # ^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2430 + def visit_module_node(node); end + + # (foo, bar), bar = qux + # ^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2447 + def visit_multi_target_node(node); end + + # foo, bar = baz + # ^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2501 + def visit_multi_write_node(node); end + + # next + # ^^^^ + # + # next foo + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2521 + def visit_next_node(node); end + + # nil + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2535 + def visit_nil_node(node); end + + # def foo(**nil); end + # ^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2542 + def visit_no_keywords_parameter_node(node); end + + # -> { _1 + _2 } + # ^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2551 + def visit_numbered_parameters_node(node); end + + # $1 + # ^^ + # + # source://prism//lib/prism/translation/ripper.rb#2556 + def visit_numbered_reference_read_node(node); end + + # def foo(bar: baz); end + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2563 + def visit_optional_keyword_parameter_node(node); end + + # def foo(bar = 1); end + # ^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2573 + def visit_optional_parameter_node(node); end + + # a or b + # ^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2583 + def visit_or_node(node); end + + # def foo(bar, *baz); end + # ^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2593 + def visit_parameters_node(node); end + + # () + # ^^ + # + # (1) + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2620 + def visit_parentheses_node(node); end + + # foo => ^(bar) + # ^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2634 + def visit_pinned_expression_node(node); end + + # foo = 1 and bar => ^foo + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2643 + def visit_pinned_variable_node(node); end + + # END {} + # ^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2649 + def visit_post_execution_node(node); end + + # BEGIN {} + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2664 + def visit_pre_execution_node(node); end + + # The top-level program node. + # + # source://prism//lib/prism/translation/ripper.rb#2678 + def visit_program_node(node); end + + # 0..5 + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2689 + def visit_range_node(node); end + + # 1r + # ^^ + # + # source://prism//lib/prism/translation/ripper.rb#2703 + def visit_rational_node(node); end + + # redo + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2709 + def visit_redo_node(node); end + + # /foo/ + # ^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2716 + def visit_regular_expression_node(node); end + + # def foo(bar:); end + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2738 + def visit_required_keyword_parameter_node(node); end + + # def foo(bar); end + # ^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2745 + def visit_required_parameter_node(node); end + + # foo rescue bar + # ^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2752 + def visit_rescue_modifier_node(node); end + + # begin; rescue; end + # ^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2762 + def visit_rescue_node(node); end + + # def foo(*bar); end + # ^^^^ + # + # def foo(*); end + # ^ + # + # source://prism//lib/prism/translation/ripper.rb#2820 + def visit_rest_parameter_node(node); end + + # retry + # ^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2832 + def visit_retry_node(node); end + + # return + # ^^^^^^ + # + # return 1 + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2842 + def visit_return_node(node); end + + # self + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2856 + def visit_self_node(node); end + + # A shareable constant. + # + # source://prism//lib/prism/translation/ripper.rb#2862 + def visit_shareable_constant_node(node); end + + # class << self; end + # ^^^^^^^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2868 + def visit_singleton_class_node(node); end + + # __ENCODING__ + # ^^^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2878 + def visit_source_encoding_node(node); end + + # __FILE__ + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2885 + def visit_source_file_node(node); end + + # __LINE__ + # ^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2892 + def visit_source_line_node(node); end + + # foo(*bar) + # ^^^^ + # + # def foo((bar, *baz)); end + # ^^^^ + # + # def foo(*); bar(*); end + # ^ + # + # source://prism//lib/prism/translation/ripper.rb#2905 + def visit_splat_node(node); end + + # A list of statements. + # + # source://prism//lib/prism/translation/ripper.rb#2910 + def visit_statements_node(node); end + + # "foo" + # ^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#2927 + def visit_string_node(node); end + + # super(foo) + # ^^^^^^^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#3059 + def visit_super_node(node); end + + # :foo + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#3080 + def visit_symbol_node(node); end + + # true + # ^^^^ + # + # source://prism//lib/prism/translation/ripper.rb#3104 + def visit_true_node(node); end + + # undef foo + # ^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#301 - def visit_parentheses_node(node); end + # source://prism//lib/prism/translation/ripper.rb#3111 + def visit_undef_node(node); end - # Visit a ProgramNode node. + # unless foo; bar end + # ^^^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#327 - def visit_program_node(node); end - - # Visit a RangeNode node. + # bar unless foo + # ^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#334 - def visit_range_node(node); end + # source://prism//lib/prism/translation/ripper.rb#3123 + def visit_unless_node(node); end - # Visit a RationalNode node. + # until foo; bar end + # ^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#347 - def visit_rational_node(node); end - - # Visit a RequiredParameterNode. + # bar until foo + # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#212 - def visit_required_parameter_node(node); end + # source://prism//lib/prism/translation/ripper.rb#3151 + def visit_until_node(node); end - # Visit a RescueNode node. + # case foo; when bar; end + # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#322 - def visit_rescue_node(node); end + # source://prism//lib/prism/translation/ripper.rb#3175 + def visit_when_node(node); end - # Visit a StatementsNode node. + # while foo; bar end + # ^^^^^^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#386 - def visit_statements_node(node); end - - # Visit a StringNode node. + # bar while foo + # ^^^^^^^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#352 - def visit_string_node(node); end + # source://prism//lib/prism/translation/ripper.rb#3196 + def visit_while_node(node); end - # Visit a SymbolNode node. + # `foo` + # ^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#376 - def visit_symbol_node(node); end + # source://prism//lib/prism/translation/ripper.rb#3220 + def visit_x_string_node(node); end - # Visit a TrueNode. + # yield + # ^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#274 - def visit_true_node(node); end - - # Visit an XStringNode node. + # yield 1 + # ^^^^^^^ # - # source://prism//lib/prism/translation/ripper.rb#359 - def visit_x_string_node(node); end + # source://prism//lib/prism/translation/ripper.rb#3243 + def visit_yield_node(node); end private - # source://prism//lib/prism/translation/ripper.rb#680 - def _dispatch0; end + # :stopdoc: + # + # source://prism//lib/prism/translation/ripper.rb#3383 + def _dispatch_0; end - # source://prism//lib/prism/translation/ripper.rb#681 - def _dispatch1(_); end + # source://prism//lib/prism/translation/ripper.rb#3384 + def _dispatch_1(_); end - # source://prism//lib/prism/translation/ripper.rb#682 - def _dispatch2(_, _); end + # source://prism//lib/prism/translation/ripper.rb#3385 + def _dispatch_2(_, _); end - # source://prism//lib/prism/translation/ripper.rb#683 - def _dispatch3(_, _, _); end + # source://prism//lib/prism/translation/ripper.rb#3386 + def _dispatch_3(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#684 - def _dispatch4(_, _, _, _); end + # source://prism//lib/prism/translation/ripper.rb#3387 + def _dispatch_4(_, _, _, _); end - # source://prism//lib/prism/translation/ripper.rb#685 - def _dispatch5(_, _, _, _, _); end + # source://prism//lib/prism/translation/ripper.rb#3388 + def _dispatch_5(_, _, _, _, _); end - # source://prism//lib/prism/translation/ripper.rb#686 - def _dispatch7(_, _, _, _, _, _, _); end + # source://prism//lib/prism/translation/ripper.rb#3389 + def _dispatch_7(_, _, _, _, _, _, _); end # This method is responsible for updating lineno and column information # to reflect the current node. @@ -27708,1396 +32000,1624 @@ class Prism::Translation::Ripper < ::Prism::Compiler # This method could be drastically improved with some caching on the start # of every line, but for now it's good enough. # - # source://prism//lib/prism/translation/ripper.rb#663 + # source://prism//lib/prism/translation/ripper.rb#3373 def bounds(location); end - # If we need to do something unusual, we can directly update the line number - # and column to reflect the current node. + # Returns true if the given node is a command node. + # + # @return [Boolean] + # + # source://prism//lib/prism/translation/ripper.rb#1163 + def command?(node); end + + # This method is called when the parser found syntax error. # - # source://prism//lib/prism/translation/ripper.rb#670 - def bounds_values(lineno, column); end + # source://prism//lib/prism/translation/ripper.rb#3411 + def compile_error(msg); end - # For CRuby et al, "no block" in an on_block_var is false + # This method is provided by the Ripper C extension. It is called when a + # string needs to be dedented because of a tilde heredoc. It is expected + # that it will modify the string in place and return the number of bytes + # that were removed. # - # source://prism//lib/prism/translation/ripper.rb#646 - def no_block_value; end + # source://prism//lib/prism/translation/ripper.rb#3426 + def dedent_string(string, width); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_BEGIN(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_CHAR(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_END(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on___end__(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_alias(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_alias_error(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_aref(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_aref_field(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_arg_ambiguous(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_arg_paren(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_args_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_args_add_block(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_args_add_star(_, _); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_args_forward; end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_args_new; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_array(_); end - # source://prism//lib/prism/translation/ripper.rb#684 + # source://prism//lib/prism/translation/ripper.rb#3387 def on_aryptn(_, _, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_assign(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_assign_error(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_assoc_new(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_assoc_splat(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_assoclist_from_args(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_backref(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_backtick(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_bare_assoc_hash(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_begin(_); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_binary(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_block_var(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_blockarg(_); end - # source://prism//lib/prism/translation/ripper.rb#684 + # source://prism//lib/prism/translation/ripper.rb#3387 def on_bodystmt(_, _, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_brace_block(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_break(_); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_call(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_case(_, _); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_class(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_class_name_error(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_comma(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_command(_, _); end - # source://prism//lib/prism/translation/ripper.rb#684 + # source://prism//lib/prism/translation/ripper.rb#3387 def on_command_call(_, _, _, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_comment(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_const(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_const_path_field(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_const_path_ref(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_const_ref(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_cvar(_); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_def(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_defined(_); end - # source://prism//lib/prism/translation/ripper.rb#685 + # source://prism//lib/prism/translation/ripper.rb#3388 def on_defs(_, _, _, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_do_block(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_dot2(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_dot3(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_dyna_symbol(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_else(_); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_elsif(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_embdoc(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_embdoc_beg(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_embdoc_end(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_embexpr_beg(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_embexpr_end(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_embvar(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_ensure(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_excessed_comma; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_fcall(_); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_field(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_float(_); end - # source://prism//lib/prism/translation/ripper.rb#684 + # source://prism//lib/prism/translation/ripper.rb#3387 def on_fndptn(_, _, _, _); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_for(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_gvar(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_hash(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_heredoc_beg(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_heredoc_dedent(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_heredoc_end(_); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_hshptn(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_ident(_); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_if(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_if_mod(_, _); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_ifop(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_ignored_nl(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_ignored_sp(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_imaginary(_); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_in(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_int(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_ivar(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_kw(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_kwrest_param(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_label(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_label_end(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_lambda(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_lbrace(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_lbracket(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_lparen(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_magic_comment(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_massign(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_method_add_arg(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_method_add_block(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_mlhs_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_mlhs_add_post(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_mlhs_add_star(_, _); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_mlhs_new; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_mlhs_paren(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_module(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_mrhs_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_mrhs_add_star(_, _); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_mrhs_new; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_mrhs_new_from_args(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_next(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_nl(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_nokw_param(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_op(_); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_opassign(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_operator_ambiguous(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_param_error(_, _); end - # source://prism//lib/prism/translation/ripper.rb#686 + # source://prism//lib/prism/translation/ripper.rb#3389 def on_params(_, _, _, _, _, _, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_paren(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_parse_error(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_period(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_program(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_qsymbols_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_qsymbols_beg(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_qsymbols_new; end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_qwords_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_qwords_beg(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_qwords_new; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_rational(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_rbrace(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_rbracket(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_redo; end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_regexp_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_regexp_beg(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_regexp_end(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_regexp_literal(_, _); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_regexp_new; end - # source://prism//lib/prism/translation/ripper.rb#684 + # source://prism//lib/prism/translation/ripper.rb#3387 def on_rescue(_, _, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_rescue_mod(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_rest_param(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_retry; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_return(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_return0; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_rparen(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_sclass(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_semicolon(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_sp(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_stmts_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_stmts_new; end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_string_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_string_concat(_, _); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_string_content; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_string_dvar(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_string_embexpr(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_string_literal(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_super(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_symbeg(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_symbol(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_symbol_literal(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_symbols_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_symbols_beg(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_symbols_new; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_tlambda(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_tlambeg(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_top_const_field(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_top_const_ref(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_tstring_beg(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_tstring_content(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_tstring_end(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_unary(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_undef(_); end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_unless(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_unless_mod(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_until(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_until_mod(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_var_alias(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_var_field(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_var_ref(_); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_vcall(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_void_stmt; end - # source://prism//lib/prism/translation/ripper.rb#683 + # source://prism//lib/prism/translation/ripper.rb#3386 def on_when(_, _, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_while(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_while_mod(_, _); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_word_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_word_new; end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_words_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_words_beg(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_words_new; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_words_sep(_); end - # source://prism//lib/prism/translation/ripper.rb#682 + # source://prism//lib/prism/translation/ripper.rb#3385 def on_xstring_add(_, _); end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_xstring_literal(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_xstring_new; end - # source://prism//lib/prism/translation/ripper.rb#681 + # source://prism//lib/prism/translation/ripper.rb#3384 def on_yield(_); end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_yield0; end - # source://prism//lib/prism/translation/ripper.rb#680 + # source://prism//lib/prism/translation/ripper.rb#3383 def on_zsuper; end # Lazily initialize the parse result. # - # source://prism//lib/prism/translation/ripper.rb#676 + # source://prism//lib/prism/translation/ripper.rb#3269 def result; end - # In Prism this is a CallNode with :[]= as the operator. - # In Ripper it's an :aref_field. + # Returns true if there is a comma between the two locations. + # + # @return [Boolean] + # + # source://prism//lib/prism/translation/ripper.rb#3278 + def trailing_comma?(left, right); end + + # Visit one side of an alias global variable node. # - # source://prism//lib/prism/translation/ripper.rb#521 - def visit_aref_field_node(node); end + # source://prism//lib/prism/translation/ripper.rb#570 + def visit_alias_global_variable_node_value(node); end - # In Prism this is a CallNode with :[] as the operator. - # In Ripper it's an :aref. + # Visit a list of elements, like the elements of an array or arguments. # - # source://prism//lib/prism/translation/ripper.rb#513 - def visit_aref_node(node); end + # source://prism//lib/prism/translation/ripper.rb#756 + def visit_arguments(elements); end - # Visit an operation-and-assign node, such as +=. + # Visit the clauses of a begin node to form an on_bodystmt call. # - # source://prism//lib/prism/translation/ripper.rb#501 - def visit_binary_op_assign(node, operator: T.unsafe(nil)); end + # source://prism//lib/prism/translation/ripper.rb#840 + def visit_begin_node_clauses(location, node, allow_newline); end - # Visit a binary operator node like an AndNode or OrNode + # Visit the body of a structure that can have either a set of statements + # or statements wrapped in rescue/else/ensure. # - # source://prism//lib/prism/translation/ripper.rb#652 - def visit_binary_operator(node); end + # source://prism//lib/prism/translation/ripper.rb#875 + def visit_body_node(location, node, allow_newline = T.unsafe(nil)); end - # Visit a list of elements, like the elements of an array or arguments. + # Visit the arguments and block of a call node and return the arguments + # and block as they should be used. + # + # source://prism//lib/prism/translation/ripper.rb#1136 + def visit_call_node_arguments(arguments_node, block_node, trailing_comma); end + + # Visit a constant path that is part of a write node. + # + # source://prism//lib/prism/translation/ripper.rb#1489 + def visit_constant_path_write_node_target(node); end + + # Visit a destructured positional parameter node. # - # source://prism//lib/prism/translation/ripper.rb#474 - def visit_elements(elements); end + # source://prism//lib/prism/translation/ripper.rb#2607 + def visit_destructured_parameter_node(node); end - # Visit an InterpolatedStringNode or an InterpolatedSymbolNode node. + # Visit a string that is expressed using a <<~ heredoc. # - # source://prism//lib/prism/translation/ripper.rb#482 - def visit_enumerated_node(node); end + # source://prism//lib/prism/translation/ripper.rb#2978 + def visit_heredoc_node(parts, base); end - # Generate Ripper events for a CallNode with no opening_loc + # Ripper gives back the escaped string content but strips out the common + # leading whitespace. Prism gives back the unescaped string content and + # a location for the escaped string content. Unfortunately these don't + # work well together, so here we need to re-derive the common leading + # whitespace. # - # source://prism//lib/prism/translation/ripper.rb#410 - def visit_no_paren_call(node); end + # source://prism//lib/prism/translation/ripper.rb#2953 + def visit_heredoc_node_whitespace(parts); end + + # Visit a heredoc node that is representing a string. + # + # source://prism//lib/prism/translation/ripper.rb#3024 + def visit_heredoc_string_node(node); end + + # Visit a heredoc node that is representing an xstring. + # + # source://prism//lib/prism/translation/ripper.rb#3041 + def visit_heredoc_x_string_node(node); end + + # Visit the targets of a multi-target node. + # + # source://prism//lib/prism/translation/ripper.rb#2460 + def visit_multi_target_node_targets(lefts, rest, rights, skippable); end # Visit a node that represents a number. We need to explicitly handle the # unary - operator. # - # source://prism//lib/prism/translation/ripper.rb#611 - def visit_number(node); end + # source://prism//lib/prism/translation/ripper.rb#3317 + def visit_number_node(node); end - # Ripper has several methods of emitting a symbol literal. Inside an alias - # sometimes it suppresses the [:symbol] wrapper around ident. If the symbol - # is also the name of a keyword (e.g. :if) it will emit a :@kw wrapper, not - # an :@ident wrapper, with similar treatment for constants and operators. + # Visit a pattern within a pattern match. This is used to bypass the + # parenthesis node that can be used to wrap patterns. # - # source://prism//lib/prism/translation/ripper.rb#580 - def visit_symbol_literal_node(node, no_symbol_wrapper: T.unsafe(nil)); end + # source://prism//lib/prism/translation/ripper.rb#595 + def visit_pattern_node(node); end - # For most Rubies and JRuby after 9.4.6.0 this is a no-op. + # Visit the list of statements of a statements node. We support nil + # statements in the list. This would normally not be allowed by the + # structure of the prism parse tree, but we manually add them here so that + # we can mirror Ripper's void stmt. # - # source://prism//lib/prism/translation/ripper.rb#634 - def visit_unary_operator(value); end + # source://prism//lib/prism/translation/ripper.rb#2919 + def visit_statements_node_body(body); end - class << self - # This is a convenience method that runs the SexpBuilderPP subclass parser. - # - # source://prism//lib/prism/translation/ripper.rb#403 - def sexp(source); end + # Visit an individual part of a string-like node. + # + # source://prism//lib/prism/translation/ripper.rb#2211 + def visit_string_content(part); end - # This is a convenience method that runs the SexpBuilder subclass parser. - # - # source://prism//lib/prism/translation/ripper.rb#398 - def sexp_raw(source); end - end + # Visit the string content of a particular node. This method is used to + # split into the various token types. + # + # source://prism//lib/prism/translation/ripper.rb#3290 + def visit_token(token, allow_keywords = T.unsafe(nil)); end + + # Dispatch a words_sep event that contains the space between the elements + # of list literals. + # + # source://prism//lib/prism/translation/ripper.rb#745 + def visit_words_sep(opening_loc, previous, current); end + + # Visit a node that represents a write value. This is used to handle the + # special case of an implicit array that is generated without brackets. + # + # source://prism//lib/prism/translation/ripper.rb#3335 + def visit_write_value(node); end + + # Returns true if there is a semicolon between the two locations. + # + # @return [Boolean] + # + # source://prism//lib/prism/translation/ripper.rb#3283 + def void_stmt?(left, right, allow_newline); end + + # This method is called when weak warning is produced by the parser. + # +fmt+ and +args+ is printf style. + # + # source://prism//lib/prism/translation/ripper.rb#3402 + def warn(fmt, *args); end + + # This method is called when strong warning is produced by the parser. + # +fmt+ and +args+ is printf style. + # + # source://prism//lib/prism/translation/ripper.rb#3407 + def warning(fmt, *args); end + + class << self + # Tokenizes the Ruby program and returns an array of an array, + # which is formatted like + # [[lineno, column], type, token, state]. + # The +filename+ argument is mostly ignored. + # By default, this method does not handle syntax errors in +src+, + # use the +raise_errors+ keyword to raise a SyntaxError for an error in +src+. + # + # require 'ripper' + # require 'pp' + # + # pp Ripper.lex("def m(a) nil end") + # #=> [[[1, 0], :on_kw, "def", FNAME ], + # [[1, 3], :on_sp, " ", FNAME ], + # [[1, 4], :on_ident, "m", ENDFN ], + # [[1, 5], :on_lparen, "(", BEG|LABEL], + # [[1, 6], :on_ident, "a", ARG ], + # [[1, 7], :on_rparen, ")", ENDFN ], + # [[1, 8], :on_sp, " ", BEG ], + # [[1, 9], :on_kw, "nil", END ], + # [[1, 12], :on_sp, " ", END ], + # [[1, 13], :on_kw, "end", END ]] + # + # source://prism//lib/prism/translation/ripper.rb#72 + def lex(src, filename = T.unsafe(nil), lineno = T.unsafe(nil), raise_errors: T.unsafe(nil)); end + + # Parses the given Ruby program read from +src+. + # +src+ must be a String or an IO or a object with a #gets method. + # + # source://prism//lib/prism/translation/ripper.rb#46 + def parse(src, filename = T.unsafe(nil), lineno = T.unsafe(nil)); end + + # Parses +src+ and create S-exp tree. + # Returns more readable tree rather than Ripper.sexp_raw. + # This method is mainly for developer use. + # The +filename+ argument is mostly ignored. + # By default, this method does not handle syntax errors in +src+, + # returning +nil+ in such cases. Use the +raise_errors+ keyword + # to raise a SyntaxError for an error in +src+. + # + # require "ripper" + # require "pp" + # + # pp Ripper.sexp("def m(a) nil end") + # #=> [:program, + # [[:def, + # [:@ident, "m", [1, 4]], + # [:paren, [:params, [[:@ident, "a", [1, 6]]], nil, nil, nil, nil, nil, nil]], + # [:bodystmt, [[:var_ref, [:@kw, "nil", [1, 9]]]], nil, nil, nil]]]] + # + # source://prism//lib/prism/translation/ripper.rb#381 + def sexp(src, filename = T.unsafe(nil), lineno = T.unsafe(nil), raise_errors: T.unsafe(nil)); end + + # Parses +src+ and create S-exp tree. + # This method is mainly for developer use. + # The +filename+ argument is mostly ignored. + # By default, this method does not handle syntax errors in +src+, + # returning +nil+ in such cases. Use the +raise_errors+ keyword + # to raise a SyntaxError for an error in +src+. + # + # require 'ripper' + # require 'pp' + # + # pp Ripper.sexp_raw("def m(a) nil end") + # #=> [:program, + # [:stmts_add, + # [:stmts_new], + # [:def, + # [:@ident, "m", [1, 4]], + # [:paren, [:params, [[:@ident, "a", [1, 6]]], nil, nil, nil]], + # [:bodystmt, + # [:stmts_add, [:stmts_new], [:var_ref, [:@kw, "nil", [1, 9]]]], + # nil, + # nil, + # nil]]]] + # + # source://prism//lib/prism/translation/ripper.rb#416 + def sexp_raw(src, filename = T.unsafe(nil), lineno = T.unsafe(nil), raise_errors: T.unsafe(nil)); end + end + + Result = type_member end -# In an alias statement Ripper will emit @kw instead of @ident if the object -# being aliased is a Ruby keyword. For instance, in the line "alias :foo :if", -# the :if is treated as a lexer keyword. So we need to know what symbols are -# also keywords. +# A list of all of the Ruby binary operators. +# +# source://prism//lib/prism/translation/ripper.rb#337 +Prism::Translation::Ripper::BINARY_OPERATORS = T.let(T.unsafe(nil), Array) + +# This array contains name of all ripper events. +# +# source://prism//lib/prism/translation/ripper.rb#289 +Prism::Translation::Ripper::EVENTS = T.let(T.unsafe(nil), Array) + +# A list of all of the Ruby keywords. +# +# source://prism//lib/prism/translation/ripper.rb#292 +Prism::Translation::Ripper::KEYWORDS = T.let(T.unsafe(nil), Array) + +# This array contains name of parser events. # -# source://prism//lib/prism/translation/ripper.rb#532 -Prism::Translation::Ripper::RUBY_KEYWORDS = T.let(T.unsafe(nil), Array) +# source://prism//lib/prism/translation/ripper.rb#283 +Prism::Translation::Ripper::PARSER_EVENTS = T.let(T.unsafe(nil), Array) + +# This contains a table of all of the parser events and their +# corresponding arity. +# +# source://prism//lib/prism/translation/ripper.rb#84 +Prism::Translation::Ripper::PARSER_EVENT_TABLE = T.let(T.unsafe(nil), Hash) + +# This array contains name of scanner events. +# +# source://prism//lib/prism/translation/ripper.rb#286 +Prism::Translation::Ripper::SCANNER_EVENTS = T.let(T.unsafe(nil), Array) + +# This contains a table of all of the scanner events and their +# corresponding arity. +# +# source://prism//lib/prism/translation/ripper.rb#227 +Prism::Translation::Ripper::SCANNER_EVENT_TABLE = T.let(T.unsafe(nil), Hash) # This class mirrors the ::Ripper::SexpBuilder subclass of ::Ripper that # returns the arrays of [type, *children]. # -# source://prism//lib/prism/translation/ripper.rb#24 +# source://prism//lib/prism/translation/ripper/sexp.rb#10 class Prism::Translation::Ripper::SexpBuilder < ::Prism::Translation::Ripper - private + Result = type_member { { fixed: T::Array[T.untyped] } } + + # :stopdoc: + # + # source://prism//lib/prism/translation/ripper/sexp.rb#13 + def error; end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_BEGIN(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_CHAR(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_CHAR(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_END(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on___end__(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on___end__(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_alias(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_alias_error(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_aref(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_aref_field(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_arg_ambiguous(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_arg_paren(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_args_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_args_add_block(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_args_add_star(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_args_forward(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_args_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_array(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_aryptn(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_assign(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_assign_error(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_assoc_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_assoc_splat(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_assoclist_from_args(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_backref(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_backref(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_backtick(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_backtick(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_bare_assoc_hash(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_begin(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_binary(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_block_var(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_blockarg(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_bodystmt(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_brace_block(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_break(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_call(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_case(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_class(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_class_name_error(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_comma(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_comma(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_command(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_command_call(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_comment(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_comment(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_const(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_const(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_const_path_field(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_const_path_ref(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_const_ref(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_cvar(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_cvar(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_def(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_defined(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_defs(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_do_block(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_dot2(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_dot3(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_dyna_symbol(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_else(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_elsif(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_embdoc(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_embdoc(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_embdoc_beg(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_embdoc_beg(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_embdoc_end(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_embdoc_end(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_embexpr_beg(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_embexpr_beg(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_embexpr_end(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_embexpr_end(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_embvar(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_embvar(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_ensure(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_excessed_comma(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_fcall(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_field(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_float(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_float(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_fndptn(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_for(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_gvar(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_gvar(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_hash(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_heredoc_beg(value); end - - # source://prism//lib/prism/translation/ripper.rb#28 - def on_heredoc_dedent(*args); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_heredoc_beg(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_heredoc_end(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_heredoc_end(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_hshptn(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_ident(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_ident(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_if(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_if_mod(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_ifop(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_ignored_nl(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_ignored_nl(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_ignored_sp(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_ignored_sp(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_imaginary(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_imaginary(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_in(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_int(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_int(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_ivar(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_ivar(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_kw(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_kw(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_kwrest_param(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_label(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_label(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_label_end(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_label_end(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_lambda(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_lbrace(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_lbrace(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_lbracket(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_lbracket(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_lparen(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_lparen(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_magic_comment(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_massign(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_method_add_arg(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_method_add_block(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_mlhs_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_mlhs_add_post(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_mlhs_add_star(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_mlhs_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_mlhs_paren(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_module(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_mrhs_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_mrhs_add_star(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_mrhs_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_mrhs_new_from_args(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_next(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_nl(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_nl(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_nokw_param(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_op(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_op(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_opassign(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_operator_ambiguous(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_param_error(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_params(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_paren(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 - def on_parse_error(*args); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_period(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_period(value); end - - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_program(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_qsymbols_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_qsymbols_beg(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_qsymbols_beg(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_qsymbols_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_qwords_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_qwords_beg(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_qwords_beg(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_qwords_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_rational(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_rational(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_rbrace(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_rbrace(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_rbracket(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_rbracket(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_redo(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_regexp_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_regexp_beg(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_regexp_beg(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_regexp_end(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_regexp_end(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_regexp_literal(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_regexp_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_rescue(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_rescue_mod(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_rest_param(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_retry(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_return(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_return0(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_rparen(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_rparen(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_sclass(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_semicolon(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_semicolon(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_sp(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_sp(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_stmts_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_stmts_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_string_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_string_concat(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_string_content(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_string_dvar(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_string_embexpr(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_string_literal(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_super(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_symbeg(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_symbeg(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_symbol(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_symbol_literal(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_symbols_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_symbols_beg(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_symbols_beg(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_symbols_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_tlambda(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_tlambda(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_tlambeg(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_tlambeg(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_top_const_field(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_top_const_ref(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_tstring_beg(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_tstring_beg(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_tstring_content(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_tstring_content(tok); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_tstring_end(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_tstring_end(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_unary(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_undef(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_unless(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_unless_mod(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_until(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_until_mod(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_var_alias(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_var_field(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_var_ref(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_vcall(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_void_stmt(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_when(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_while(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_while_mod(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_word_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_word_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_words_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_words_beg(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_words_beg(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_words_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#34 - def on_words_sep(value); end + # source://prism//lib/prism/translation/ripper/sexp.rb#55 + def on_words_sep(tok); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_xstring_add(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_xstring_literal(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_xstring_new(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_yield(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_yield0(*args); end - # source://prism//lib/prism/translation/ripper.rb#28 + # source://prism//lib/prism/translation/ripper/sexp.rb#47 def on_zsuper(*args); end + + private + + # source://prism//lib/prism/translation/ripper/sexp.rb#61 + def compile_error(mesg); end + + # source://prism//lib/prism/translation/ripper/sexp.rb#17 + def dedent_element(e, width); end + + # source://prism//lib/prism/translation/ripper/sexp.rb#61 + def on_error(mesg); end + + # source://prism//lib/prism/translation/ripper/sexp.rb#24 + def on_heredoc_dedent(val, width); end + + # source://prism//lib/prism/translation/ripper/sexp.rb#61 + def on_parse_error(mesg); end end # This class mirrors the ::Ripper::SexpBuilderPP subclass of ::Ripper that # returns the same values as ::Ripper::SexpBuilder except with a couple of # niceties that flatten linked lists into arrays. # -# source://prism//lib/prism/translation/ripper.rb#43 +# source://prism//lib/prism/translation/ripper/sexp.rb#74 class Prism::Translation::Ripper::SexpBuilderPP < ::Prism::Translation::Ripper::SexpBuilder + Result = type_member { { fixed: T::Array[T.untyped] } } + private - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def _dispatch_event_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def _dispatch_event_push(list, item); end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_args_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_args_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#79 + def on_heredoc_dedent(val, width); end + + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_mlhs_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#109 + def on_mlhs_add_post(list, post); end + + # source://prism//lib/prism/translation/ripper/sexp.rb#105 + def on_mlhs_add_star(list, star); end + + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_mlhs_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#101 + def on_mlhs_paren(list); end + + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_mrhs_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_mrhs_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_qsymbols_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_qsymbols_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_qwords_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_qwords_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_regexp_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_regexp_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_stmts_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_stmts_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_string_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_symbols_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_symbols_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_word_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_word_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_words_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_words_new; end - # source://prism//lib/prism/translation/ripper.rb#50 + # source://prism//lib/prism/translation/ripper/sexp.rb#96 def on_xstring_add(list, item); end - # source://prism//lib/prism/translation/ripper.rb#46 + # source://prism//lib/prism/translation/ripper/sexp.rb#92 def on_xstring_new; end end +class Prism::Translation::RipperCompiler < Prism::Compiler + Result = type_member +end + +class Prism::Translation::RubyParser::Compiler < Prism::Compiler + Result = type_member { { fixed: Sexp } } +end + # Represents the use of the literal `true` keyword. # # true # ^^^^ # -# source://prism//lib/prism/node.rb#18139 +# source://prism//lib/prism/node.rb#17747 class Prism::TrueNode < ::Prism::Node # def initialize: (Location location) -> void # # @return [TrueNode] a new instance of TrueNode # - # source://prism//lib/prism/node.rb#18141 + # source://prism//lib/prism/node.rb#17749 + sig { params(source: Prism::Source, location: Prism::Location).void } def initialize(source, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#18148 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#17756 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18153 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17761 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#18163 + # source://prism//lib/prism/node.rb#17771 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#18158 + # source://prism//lib/prism/node.rb#17766 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> TrueNode + # def copy: (?location: Location) -> TrueNode # - # source://prism//lib/prism/node.rb#18168 - sig { params(params: T.untyped).returns(Prism::TrueNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#17776 + sig { params(location: Prism::Location).returns(Prism::TrueNode) } + def copy(location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18153 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17761 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { location: Location } # - # source://prism//lib/prism/node.rb#18179 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#17784 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#18185 + # source://prism//lib/prism/node.rb#17790 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # Sometimes you want to check an instance of a node against a list of @@ -29115,7 +33635,8 @@ class Prism::TrueNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#18204 + # source://prism//lib/prism/node.rb#17809 + sig { override.returns(Symbol) } def type; end class << self @@ -29126,7 +33647,7 @@ class Prism::TrueNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#18214 + # source://prism//lib/prism/node.rb#17819 def type; end end end @@ -29136,81 +33657,97 @@ end # undef :foo, :bar, :baz # ^^^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#18223 +# source://prism//lib/prism/node.rb#17828 class Prism::UndefNode < ::Prism::Node - # def initialize: (Array[Node] names, Location keyword_loc, Location location) -> void + # def initialize: (Array[SymbolNode | InterpolatedSymbolNode] names, Location keyword_loc, Location location) -> void # # @return [UndefNode] a new instance of UndefNode # - # source://prism//lib/prism/node.rb#18225 + # source://prism//lib/prism/node.rb#17830 + sig do + params( + source: Prism::Source, + names: T::Array[T.any(Prism::SymbolNode, Prism::InterpolatedSymbolNode)], + keyword_loc: Prism::Location, + location: Prism::Location + ).void + end def initialize(source, names, keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#18234 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#17839 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18239 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17844 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#18249 + # source://prism//lib/prism/node.rb#17854 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#18244 + # source://prism//lib/prism/node.rb#17849 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> UndefNode + # def copy: (?names: Array[SymbolNode | InterpolatedSymbolNode], ?keyword_loc: Location, ?location: Location) -> UndefNode # - # source://prism//lib/prism/node.rb#18254 - sig { params(params: T.untyped).returns(Prism::UndefNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#17859 + sig do + params( + names: T::Array[T.any(Prism::SymbolNode, Prism::InterpolatedSymbolNode)], + keyword_loc: Prism::Location, + location: Prism::Location + ).returns(Prism::UndefNode) + end + def copy(names: T.unsafe(nil), keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18239 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17844 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { names: Array[Node], keyword_loc: Location, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { names: Array[SymbolNode | InterpolatedSymbolNode], keyword_loc: Location, location: Location } # - # source://prism//lib/prism/node.rb#18267 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#17867 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#18287 + # source://prism//lib/prism/node.rb#17888 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#18282 + # source://prism//lib/prism/node.rb#17883 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#18275 + # source://prism//lib/prism/node.rb#17875 sig { returns(Prism::Location) } def keyword_loc; end - # attr_reader names: Array[Node] + # attr_reader names: Array[SymbolNode | InterpolatedSymbolNode] # - # source://prism//lib/prism/node.rb#18272 - sig { returns(T::Array[Prism::Node]) } + # source://prism//lib/prism/node.rb#17872 + sig { returns(T::Array[T.any(Prism::SymbolNode, Prism::InterpolatedSymbolNode)]) } def names; end # Sometimes you want to check an instance of a node against a list of @@ -29228,7 +33765,8 @@ class Prism::UndefNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#18308 + # source://prism//lib/prism/node.rb#17909 + sig { override.returns(Symbol) } def type; end class << self @@ -29239,7 +33777,7 @@ class Prism::UndefNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#18318 + # source://prism//lib/prism/node.rb#17919 def type; end end end @@ -29252,119 +33790,143 @@ end # unless foo then bar end # ^^^^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#18330 +# source://prism//lib/prism/node.rb#17931 class Prism::UnlessNode < ::Prism::Node - # def initialize: (Location keyword_loc, Node predicate, Location? then_keyword_loc, StatementsNode? statements, ElseNode? consequent, Location? end_keyword_loc, Location location) -> void + # def initialize: (Location keyword_loc, Prism::node predicate, Location? then_keyword_loc, StatementsNode? statements, ElseNode? consequent, Location? end_keyword_loc, Location location) -> void # # @return [UnlessNode] a new instance of UnlessNode # - # source://prism//lib/prism/node.rb#18332 + # source://prism//lib/prism/node.rb#17933 + sig do + params( + source: Prism::Source, + keyword_loc: Prism::Location, + predicate: Prism::Node, + then_keyword_loc: T.nilable(Prism::Location), + statements: T.nilable(Prism::StatementsNode), + consequent: T.nilable(Prism::ElseNode), + end_keyword_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, keyword_loc, predicate, then_keyword_loc, statements, consequent, end_keyword_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#18345 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#17946 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18354 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17955 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#18368 + # source://prism//lib/prism/node.rb#17969 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#18359 + # source://prism//lib/prism/node.rb#17960 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end # attr_reader consequent: ElseNode? # - # source://prism//lib/prism/node.rb#18419 + # source://prism//lib/prism/node.rb#18013 sig { returns(T.nilable(Prism::ElseNode)) } def consequent; end - # def copy: (**params) -> UnlessNode + # def copy: (?keyword_loc: Location, ?predicate: Prism::node, ?then_keyword_loc: Location?, ?statements: StatementsNode?, ?consequent: ElseNode?, ?end_keyword_loc: Location?, ?location: Location) -> UnlessNode # - # source://prism//lib/prism/node.rb#18373 - sig { params(params: T.untyped).returns(Prism::UnlessNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#17974 + sig do + params( + keyword_loc: Prism::Location, + predicate: Prism::Node, + then_keyword_loc: T.nilable(Prism::Location), + statements: T.nilable(Prism::StatementsNode), + consequent: T.nilable(Prism::ElseNode), + end_keyword_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::UnlessNode) + end + def copy(keyword_loc: T.unsafe(nil), predicate: T.unsafe(nil), then_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), consequent: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18354 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#17955 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { keyword_loc: Location, predicate: Node, then_keyword_loc: Location?, statements: StatementsNode?, consequent: ElseNode?, end_keyword_loc: Location?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { keyword_loc: Location, predicate: Prism::node, then_keyword_loc: Location?, statements: StatementsNode?, consequent: ElseNode?, end_keyword_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#18390 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#17982 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end # def end_keyword: () -> String? # - # source://prism//lib/prism/node.rb#18445 + # source://prism//lib/prism/node.rb#18040 sig { returns(T.nilable(String)) } def end_keyword; end # attr_reader end_keyword_loc: Location? # - # source://prism//lib/prism/node.rb#18422 + # source://prism//lib/prism/node.rb#18016 sig { returns(T.nilable(Prism::Location)) } def end_keyword_loc; end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#18450 + # source://prism//lib/prism/node.rb#18045 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#18435 + # source://prism//lib/prism/node.rb#18030 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#18395 + # source://prism//lib/prism/node.rb#17987 sig { returns(Prism::Location) } def keyword_loc; end - # attr_reader predicate: Node + # attr_reader predicate: Prism::node # - # source://prism//lib/prism/node.rb#18401 + # source://prism//lib/prism/node.rb#17994 sig { returns(Prism::Node) } def predicate; end - # source://prism//lib/prism/node.rb#18349 + # source://prism//lib/prism/node.rb#17950 def set_newline_flag(newline_marked); end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#18416 + # source://prism//lib/prism/node.rb#18010 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end # def then_keyword: () -> String? # - # source://prism//lib/prism/node.rb#18440 + # source://prism//lib/prism/node.rb#18035 sig { returns(T.nilable(String)) } def then_keyword; end # attr_reader then_keyword_loc: Location? # - # source://prism//lib/prism/node.rb#18404 + # source://prism//lib/prism/node.rb#17997 sig { returns(T.nilable(Prism::Location)) } def then_keyword_loc; end @@ -29383,7 +33945,8 @@ class Prism::UnlessNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#18486 + # source://prism//lib/prism/node.rb#18081 + sig { override.returns(Symbol) } def type; end class << self @@ -29394,7 +33957,7 @@ class Prism::UnlessNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#18496 + # source://prism//lib/prism/node.rb#18091 def type; end end end @@ -29407,109 +33970,131 @@ end # until foo do bar end # ^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#18508 +# source://prism//lib/prism/node.rb#18103 class Prism::UntilNode < ::Prism::Node - # def initialize: (Integer flags, Location keyword_loc, Location? closing_loc, Node predicate, StatementsNode? statements, Location location) -> void + # def initialize: (Integer flags, Location keyword_loc, Location? closing_loc, Prism::node predicate, StatementsNode? statements, Location location) -> void # # @return [UntilNode] a new instance of UntilNode # - # source://prism//lib/prism/node.rb#18510 + # source://prism//lib/prism/node.rb#18105 + sig do + params( + source: Prism::Source, + flags: Integer, + keyword_loc: Prism::Location, + closing_loc: T.nilable(Prism::Location), + predicate: Prism::Node, + statements: T.nilable(Prism::StatementsNode), + location: Prism::Location + ).void + end def initialize(source, flags, keyword_loc, closing_loc, predicate, statements, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#18522 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#18117 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def begin_modifier?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#18599 + # source://prism//lib/prism/node.rb#18188 sig { returns(T::Boolean) } def begin_modifier?; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18531 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#18126 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#18609 + # source://prism//lib/prism/node.rb#18198 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#18580 + # source://prism//lib/prism/node.rb#18168 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#18544 + # source://prism//lib/prism/node.rb#18139 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#18536 + # source://prism//lib/prism/node.rb#18131 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> UntilNode + # def copy: (?flags: Integer, ?keyword_loc: Location, ?closing_loc: Location?, ?predicate: Prism::node, ?statements: StatementsNode?, ?location: Location) -> UntilNode # - # source://prism//lib/prism/node.rb#18549 - sig { params(params: T.untyped).returns(Prism::UntilNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#18144 + sig do + params( + flags: Integer, + keyword_loc: Prism::Location, + closing_loc: T.nilable(Prism::Location), + predicate: Prism::Node, + statements: T.nilable(Prism::StatementsNode), + location: Prism::Location + ).returns(Prism::UntilNode) + end + def copy(flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), predicate: T.unsafe(nil), statements: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18531 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#18126 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, keyword_loc: Location, closing_loc: Location?, predicate: Node, statements: StatementsNode?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, keyword_loc: Location, closing_loc: Location?, predicate: Prism::node, statements: StatementsNode?, location: Location } # - # source://prism//lib/prism/node.rb#18565 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#18152 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#18614 + # source://prism//lib/prism/node.rb#18203 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#18604 + # source://prism//lib/prism/node.rb#18193 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#18574 + # source://prism//lib/prism/node.rb#18161 sig { returns(Prism::Location) } def keyword_loc; end - # attr_reader predicate: Node + # attr_reader predicate: Prism::node # - # source://prism//lib/prism/node.rb#18592 + # source://prism//lib/prism/node.rb#18181 sig { returns(Prism::Node) } def predicate; end - # source://prism//lib/prism/node.rb#18526 + # source://prism//lib/prism/node.rb#18121 def set_newline_flag(newline_marked); end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#18595 + # source://prism//lib/prism/node.rb#18184 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end @@ -29528,14 +34113,15 @@ class Prism::UntilNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#18645 + # source://prism//lib/prism/node.rb#18234 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#18570 + # source://prism//lib/prism/node.rb#18157 sig { returns(Integer) } def flags; end @@ -29547,7 +34133,7 @@ class Prism::UntilNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#18655 + # source://prism//lib/prism/node.rb#18244 def type; end end end @@ -29574,893 +34160,905 @@ Prism::VERSION = T.let(T.unsafe(nil), String) # end # end # -# source://prism//lib/prism/visitor.rb#50 +# source://prism//lib/prism/visitor.rb#54 class Prism::Visitor < ::Prism::BasicVisitor # Visit a AliasGlobalVariableNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::AliasGlobalVariableNode).void } def visit_alias_global_variable_node(node); end # Visit a AliasMethodNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::AliasMethodNode).void } def visit_alias_method_node(node); end # Visit a AlternationPatternNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::AlternationPatternNode).void } def visit_alternation_pattern_node(node); end # Visit a AndNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::AndNode).void } def visit_and_node(node); end # Visit a ArgumentsNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ArgumentsNode).void } def visit_arguments_node(node); end # Visit a ArrayNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ArrayNode).void } def visit_array_node(node); end # Visit a ArrayPatternNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ArrayPatternNode).void } def visit_array_pattern_node(node); end # Visit a AssocNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::AssocNode).void } def visit_assoc_node(node); end # Visit a AssocSplatNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::AssocSplatNode).void } def visit_assoc_splat_node(node); end # Visit a BackReferenceReadNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::BackReferenceReadNode).void } def visit_back_reference_read_node(node); end # Visit a BeginNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::BeginNode).void } def visit_begin_node(node); end # Visit a BlockArgumentNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::BlockArgumentNode).void } def visit_block_argument_node(node); end # Visit a BlockLocalVariableNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::BlockLocalVariableNode).void } def visit_block_local_variable_node(node); end # Visit a BlockNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::BlockNode).void } def visit_block_node(node); end # Visit a BlockParameterNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::BlockParameterNode).void } def visit_block_parameter_node(node); end # Visit a BlockParametersNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::BlockParametersNode).void } def visit_block_parameters_node(node); end # Visit a BreakNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::BreakNode).void } def visit_break_node(node); end # Visit a CallAndWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::CallAndWriteNode).void } def visit_call_and_write_node(node); end # Visit a CallNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::CallNode).void } def visit_call_node(node); end # Visit a CallOperatorWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::CallOperatorWriteNode).void } def visit_call_operator_write_node(node); end # Visit a CallOrWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::CallOrWriteNode).void } def visit_call_or_write_node(node); end # Visit a CallTargetNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::CallTargetNode).void } def visit_call_target_node(node); end # Visit a CapturePatternNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::CapturePatternNode).void } def visit_capture_pattern_node(node); end # Visit a CaseMatchNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::CaseMatchNode).void } def visit_case_match_node(node); end # Visit a CaseNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::CaseNode).void } def visit_case_node(node); end # Visit a ClassNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ClassNode).void } def visit_class_node(node); end # Visit a ClassVariableAndWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ClassVariableAndWriteNode).void } def visit_class_variable_and_write_node(node); end # Visit a ClassVariableOperatorWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ClassVariableOperatorWriteNode).void } def visit_class_variable_operator_write_node(node); end # Visit a ClassVariableOrWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ClassVariableOrWriteNode).void } def visit_class_variable_or_write_node(node); end # Visit a ClassVariableReadNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ClassVariableReadNode).void } def visit_class_variable_read_node(node); end # Visit a ClassVariableTargetNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ClassVariableTargetNode).void } def visit_class_variable_target_node(node); end # Visit a ClassVariableWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ClassVariableWriteNode).void } def visit_class_variable_write_node(node); end # Visit a ConstantAndWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantAndWriteNode).void } def visit_constant_and_write_node(node); end # Visit a ConstantOperatorWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantOperatorWriteNode).void } def visit_constant_operator_write_node(node); end # Visit a ConstantOrWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantOrWriteNode).void } def visit_constant_or_write_node(node); end # Visit a ConstantPathAndWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantPathAndWriteNode).void } def visit_constant_path_and_write_node(node); end # Visit a ConstantPathNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantPathNode).void } def visit_constant_path_node(node); end # Visit a ConstantPathOperatorWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantPathOperatorWriteNode).void } def visit_constant_path_operator_write_node(node); end # Visit a ConstantPathOrWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantPathOrWriteNode).void } def visit_constant_path_or_write_node(node); end # Visit a ConstantPathTargetNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantPathTargetNode).void } def visit_constant_path_target_node(node); end # Visit a ConstantPathWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantPathWriteNode).void } def visit_constant_path_write_node(node); end # Visit a ConstantReadNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantReadNode).void } def visit_constant_read_node(node); end # Visit a ConstantTargetNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantTargetNode).void } def visit_constant_target_node(node); end # Visit a ConstantWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ConstantWriteNode).void } def visit_constant_write_node(node); end # Visit a DefNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::DefNode).void } def visit_def_node(node); end # Visit a DefinedNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::DefinedNode).void } def visit_defined_node(node); end # Visit a ElseNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ElseNode).void } def visit_else_node(node); end # Visit a EmbeddedStatementsNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::EmbeddedStatementsNode).void } def visit_embedded_statements_node(node); end # Visit a EmbeddedVariableNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::EmbeddedVariableNode).void } def visit_embedded_variable_node(node); end # Visit a EnsureNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::EnsureNode).void } def visit_ensure_node(node); end # Visit a FalseNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::FalseNode).void } def visit_false_node(node); end # Visit a FindPatternNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::FindPatternNode).void } def visit_find_pattern_node(node); end # Visit a FlipFlopNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::FlipFlopNode).void } def visit_flip_flop_node(node); end # Visit a FloatNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::FloatNode).void } def visit_float_node(node); end # Visit a ForNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ForNode).void } def visit_for_node(node); end # Visit a ForwardingArgumentsNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ForwardingArgumentsNode).void } def visit_forwarding_arguments_node(node); end # Visit a ForwardingParameterNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ForwardingParameterNode).void } def visit_forwarding_parameter_node(node); end # Visit a ForwardingSuperNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ForwardingSuperNode).void } def visit_forwarding_super_node(node); end # Visit a GlobalVariableAndWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::GlobalVariableAndWriteNode).void } def visit_global_variable_and_write_node(node); end # Visit a GlobalVariableOperatorWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::GlobalVariableOperatorWriteNode).void } def visit_global_variable_operator_write_node(node); end # Visit a GlobalVariableOrWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::GlobalVariableOrWriteNode).void } def visit_global_variable_or_write_node(node); end # Visit a GlobalVariableReadNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::GlobalVariableReadNode).void } def visit_global_variable_read_node(node); end # Visit a GlobalVariableTargetNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::GlobalVariableTargetNode).void } def visit_global_variable_target_node(node); end # Visit a GlobalVariableWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::GlobalVariableWriteNode).void } def visit_global_variable_write_node(node); end # Visit a HashNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::HashNode).void } def visit_hash_node(node); end # Visit a HashPatternNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::HashPatternNode).void } def visit_hash_pattern_node(node); end # Visit a IfNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::IfNode).void } def visit_if_node(node); end # Visit a ImaginaryNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ImaginaryNode).void } def visit_imaginary_node(node); end # Visit a ImplicitNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ImplicitNode).void } def visit_implicit_node(node); end # Visit a ImplicitRestNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ImplicitRestNode).void } def visit_implicit_rest_node(node); end # Visit a InNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InNode).void } def visit_in_node(node); end # Visit a IndexAndWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::IndexAndWriteNode).void } def visit_index_and_write_node(node); end # Visit a IndexOperatorWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::IndexOperatorWriteNode).void } def visit_index_operator_write_node(node); end # Visit a IndexOrWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::IndexOrWriteNode).void } def visit_index_or_write_node(node); end # Visit a IndexTargetNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::IndexTargetNode).void } def visit_index_target_node(node); end # Visit a InstanceVariableAndWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InstanceVariableAndWriteNode).void } def visit_instance_variable_and_write_node(node); end # Visit a InstanceVariableOperatorWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InstanceVariableOperatorWriteNode).void } def visit_instance_variable_operator_write_node(node); end # Visit a InstanceVariableOrWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InstanceVariableOrWriteNode).void } def visit_instance_variable_or_write_node(node); end # Visit a InstanceVariableReadNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InstanceVariableReadNode).void } def visit_instance_variable_read_node(node); end # Visit a InstanceVariableTargetNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InstanceVariableTargetNode).void } def visit_instance_variable_target_node(node); end # Visit a InstanceVariableWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InstanceVariableWriteNode).void } def visit_instance_variable_write_node(node); end # Visit a IntegerNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::IntegerNode).void } def visit_integer_node(node); end # Visit a InterpolatedMatchLastLineNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InterpolatedMatchLastLineNode).void } def visit_interpolated_match_last_line_node(node); end # Visit a InterpolatedRegularExpressionNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InterpolatedRegularExpressionNode).void } def visit_interpolated_regular_expression_node(node); end # Visit a InterpolatedStringNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InterpolatedStringNode).void } def visit_interpolated_string_node(node); end # Visit a InterpolatedSymbolNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InterpolatedSymbolNode).void } def visit_interpolated_symbol_node(node); end # Visit a InterpolatedXStringNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::InterpolatedXStringNode).void } def visit_interpolated_x_string_node(node); end + # Visit a ItParametersNode node + # + # source://prism//lib/prism/visitor.rb#29 + sig { params(node: Prism::ItParametersNode).void } + def visit_it_parameters_node(node); end + # Visit a KeywordHashNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::KeywordHashNode).void } def visit_keyword_hash_node(node); end # Visit a KeywordRestParameterNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::KeywordRestParameterNode).void } def visit_keyword_rest_parameter_node(node); end # Visit a LambdaNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::LambdaNode).void } def visit_lambda_node(node); end # Visit a LocalVariableAndWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::LocalVariableAndWriteNode).void } def visit_local_variable_and_write_node(node); end # Visit a LocalVariableOperatorWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::LocalVariableOperatorWriteNode).void } def visit_local_variable_operator_write_node(node); end # Visit a LocalVariableOrWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::LocalVariableOrWriteNode).void } def visit_local_variable_or_write_node(node); end # Visit a LocalVariableReadNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::LocalVariableReadNode).void } def visit_local_variable_read_node(node); end # Visit a LocalVariableTargetNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::LocalVariableTargetNode).void } def visit_local_variable_target_node(node); end # Visit a LocalVariableWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::LocalVariableWriteNode).void } def visit_local_variable_write_node(node); end # Visit a MatchLastLineNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::MatchLastLineNode).void } def visit_match_last_line_node(node); end # Visit a MatchPredicateNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::MatchPredicateNode).void } def visit_match_predicate_node(node); end # Visit a MatchRequiredNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::MatchRequiredNode).void } def visit_match_required_node(node); end # Visit a MatchWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::MatchWriteNode).void } def visit_match_write_node(node); end # Visit a MissingNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::MissingNode).void } def visit_missing_node(node); end # Visit a ModuleNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ModuleNode).void } def visit_module_node(node); end # Visit a MultiTargetNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::MultiTargetNode).void } def visit_multi_target_node(node); end # Visit a MultiWriteNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::MultiWriteNode).void } def visit_multi_write_node(node); end # Visit a NextNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::NextNode).void } def visit_next_node(node); end # Visit a NilNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::NilNode).void } def visit_nil_node(node); end # Visit a NoKeywordsParameterNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::NoKeywordsParameterNode).void } def visit_no_keywords_parameter_node(node); end # Visit a NumberedParametersNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::NumberedParametersNode).void } def visit_numbered_parameters_node(node); end # Visit a NumberedReferenceReadNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::NumberedReferenceReadNode).void } def visit_numbered_reference_read_node(node); end # Visit a OptionalKeywordParameterNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::OptionalKeywordParameterNode).void } def visit_optional_keyword_parameter_node(node); end # Visit a OptionalParameterNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::OptionalParameterNode).void } def visit_optional_parameter_node(node); end # Visit a OrNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::OrNode).void } def visit_or_node(node); end # Visit a ParametersNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ParametersNode).void } def visit_parameters_node(node); end # Visit a ParenthesesNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ParenthesesNode).void } def visit_parentheses_node(node); end # Visit a PinnedExpressionNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::PinnedExpressionNode).void } def visit_pinned_expression_node(node); end # Visit a PinnedVariableNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::PinnedVariableNode).void } def visit_pinned_variable_node(node); end # Visit a PostExecutionNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::PostExecutionNode).void } def visit_post_execution_node(node); end # Visit a PreExecutionNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::PreExecutionNode).void } def visit_pre_execution_node(node); end # Visit a ProgramNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ProgramNode).void } def visit_program_node(node); end # Visit a RangeNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::RangeNode).void } def visit_range_node(node); end # Visit a RationalNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::RationalNode).void } def visit_rational_node(node); end # Visit a RedoNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::RedoNode).void } def visit_redo_node(node); end # Visit a RegularExpressionNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::RegularExpressionNode).void } def visit_regular_expression_node(node); end # Visit a RequiredKeywordParameterNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::RequiredKeywordParameterNode).void } def visit_required_keyword_parameter_node(node); end # Visit a RequiredParameterNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::RequiredParameterNode).void } def visit_required_parameter_node(node); end # Visit a RescueModifierNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::RescueModifierNode).void } def visit_rescue_modifier_node(node); end # Visit a RescueNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::RescueNode).void } def visit_rescue_node(node); end # Visit a RestParameterNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::RestParameterNode).void } def visit_rest_parameter_node(node); end # Visit a RetryNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::RetryNode).void } def visit_retry_node(node); end # Visit a ReturnNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::ReturnNode).void } def visit_return_node(node); end # Visit a SelfNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::SelfNode).void } def visit_self_node(node); end + # Visit a ShareableConstantNode node + # + # source://prism//lib/prism/visitor.rb#29 + sig { params(node: Prism::ShareableConstantNode).void } + def visit_shareable_constant_node(node); end + # Visit a SingletonClassNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::SingletonClassNode).void } def visit_singleton_class_node(node); end # Visit a SourceEncodingNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::SourceEncodingNode).void } def visit_source_encoding_node(node); end # Visit a SourceFileNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::SourceFileNode).void } def visit_source_file_node(node); end # Visit a SourceLineNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::SourceLineNode).void } def visit_source_line_node(node); end # Visit a SplatNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::SplatNode).void } def visit_splat_node(node); end # Visit a StatementsNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::StatementsNode).void } def visit_statements_node(node); end # Visit a StringNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::StringNode).void } def visit_string_node(node); end # Visit a SuperNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::SuperNode).void } def visit_super_node(node); end # Visit a SymbolNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::SymbolNode).void } def visit_symbol_node(node); end # Visit a TrueNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::TrueNode).void } def visit_true_node(node); end # Visit a UndefNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::UndefNode).void } def visit_undef_node(node); end # Visit a UnlessNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::UnlessNode).void } def visit_unless_node(node); end # Visit a UntilNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::UntilNode).void } def visit_until_node(node); end # Visit a WhenNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::WhenNode).void } def visit_when_node(node); end # Visit a WhileNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::WhileNode).void } def visit_while_node(node); end # Visit a XStringNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::XStringNode).void } def visit_x_string_node(node); end # Visit a YieldNode node # - # source://prism//lib/prism/visitor.rb#26 + # source://prism//lib/prism/visitor.rb#29 sig { params(node: Prism::YieldNode).void } def visit_yield_node(node); end end @@ -30472,89 +35070,121 @@ end # ^^^^^^^^^ # end # -# source://prism//lib/prism/node.rb#18666 +# source://prism//lib/prism/node.rb#18255 class Prism::WhenNode < ::Prism::Node - # def initialize: (Location keyword_loc, Array[Node] conditions, StatementsNode? statements, Location location) -> void + # def initialize: (Location keyword_loc, Array[Prism::node] conditions, Location? then_keyword_loc, StatementsNode? statements, Location location) -> void # # @return [WhenNode] a new instance of WhenNode # - # source://prism//lib/prism/node.rb#18668 - def initialize(source, keyword_loc, conditions, statements, location); end + # source://prism//lib/prism/node.rb#18257 + sig do + params( + source: Prism::Source, + keyword_loc: Prism::Location, + conditions: T::Array[Prism::Node], + then_keyword_loc: T.nilable(Prism::Location), + statements: T.nilable(Prism::StatementsNode), + location: Prism::Location + ).void + end + def initialize(source, keyword_loc, conditions, then_keyword_loc, statements, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#18678 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#18268 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18683 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#18273 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#18696 + # source://prism//lib/prism/node.rb#18286 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#18688 + # source://prism//lib/prism/node.rb#18278 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # attr_reader conditions: Array[Node] + # attr_reader conditions: Array[Prism::node] # - # source://prism//lib/prism/node.rb#18726 + # source://prism//lib/prism/node.rb#18311 sig { returns(T::Array[Prism::Node]) } def conditions; end - # def copy: (**params) -> WhenNode + # def copy: (?keyword_loc: Location, ?conditions: Array[Prism::node], ?then_keyword_loc: Location?, ?statements: StatementsNode?, ?location: Location) -> WhenNode # - # source://prism//lib/prism/node.rb#18701 - sig { params(params: T.untyped).returns(Prism::WhenNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#18291 + sig do + params( + keyword_loc: Prism::Location, + conditions: T::Array[Prism::Node], + then_keyword_loc: T.nilable(Prism::Location), + statements: T.nilable(Prism::StatementsNode), + location: Prism::Location + ).returns(Prism::WhenNode) + end + def copy(keyword_loc: T.unsafe(nil), conditions: T.unsafe(nil), then_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18683 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#18273 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { keyword_loc: Location, conditions: Array[Node], statements: StatementsNode?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { keyword_loc: Location, conditions: Array[Prism::node], then_keyword_loc: Location?, statements: StatementsNode?, location: Location } # - # source://prism//lib/prism/node.rb#18715 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#18299 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#18738 + # source://prism//lib/prism/node.rb#18341 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#18733 + # source://prism//lib/prism/node.rb#18331 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#18720 + # source://prism//lib/prism/node.rb#18304 sig { returns(Prism::Location) } def keyword_loc; end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#18729 + # source://prism//lib/prism/node.rb#18327 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end + # def then_keyword: () -> String? + # + # source://prism//lib/prism/node.rb#18336 + sig { returns(T.nilable(String)) } + def then_keyword; end + + # attr_reader then_keyword_loc: Location? + # + # source://prism//lib/prism/node.rb#18314 + sig { returns(T.nilable(Prism::Location)) } + def then_keyword_loc; end + # Sometimes you want to check an instance of a node against a list of # classes to see what kind of behavior to perform. Usually this is done by # calling `[cls1, cls2].include?(node.class)` or putting the node into a @@ -30570,7 +35200,8 @@ class Prism::WhenNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#18765 + # source://prism//lib/prism/node.rb#18369 + sig { override.returns(Symbol) } def type; end class << self @@ -30581,7 +35212,7 @@ class Prism::WhenNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#18775 + # source://prism//lib/prism/node.rb#18379 def type; end end end @@ -30594,109 +35225,131 @@ end # while foo do bar end # ^^^^^^^^^^^^^^^^^^^^ # -# source://prism//lib/prism/node.rb#18787 +# source://prism//lib/prism/node.rb#18391 class Prism::WhileNode < ::Prism::Node - # def initialize: (Integer flags, Location keyword_loc, Location? closing_loc, Node predicate, StatementsNode? statements, Location location) -> void + # def initialize: (Integer flags, Location keyword_loc, Location? closing_loc, Prism::node predicate, StatementsNode? statements, Location location) -> void # # @return [WhileNode] a new instance of WhileNode # - # source://prism//lib/prism/node.rb#18789 + # source://prism//lib/prism/node.rb#18393 + sig do + params( + source: Prism::Source, + flags: Integer, + keyword_loc: Prism::Location, + closing_loc: T.nilable(Prism::Location), + predicate: Prism::Node, + statements: T.nilable(Prism::StatementsNode), + location: Prism::Location + ).void + end def initialize(source, flags, keyword_loc, closing_loc, predicate, statements, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#18801 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#18405 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def begin_modifier?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#18878 + # source://prism//lib/prism/node.rb#18476 sig { returns(T::Boolean) } def begin_modifier?; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18810 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#18414 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String? # - # source://prism//lib/prism/node.rb#18888 + # source://prism//lib/prism/node.rb#18486 sig { returns(T.nilable(String)) } def closing; end # attr_reader closing_loc: Location? # - # source://prism//lib/prism/node.rb#18859 + # source://prism//lib/prism/node.rb#18456 sig { returns(T.nilable(Prism::Location)) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#18823 + # source://prism//lib/prism/node.rb#18427 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#18815 + # source://prism//lib/prism/node.rb#18419 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> WhileNode + # def copy: (?flags: Integer, ?keyword_loc: Location, ?closing_loc: Location?, ?predicate: Prism::node, ?statements: StatementsNode?, ?location: Location) -> WhileNode # - # source://prism//lib/prism/node.rb#18828 - sig { params(params: T.untyped).returns(Prism::WhileNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#18432 + sig do + params( + flags: Integer, + keyword_loc: Prism::Location, + closing_loc: T.nilable(Prism::Location), + predicate: Prism::Node, + statements: T.nilable(Prism::StatementsNode), + location: Prism::Location + ).returns(Prism::WhileNode) + end + def copy(flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), predicate: T.unsafe(nil), statements: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18810 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#18414 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end - # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, keyword_loc: Location, closing_loc: Location?, predicate: Node, statements: StatementsNode?, location: Location } + # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, keyword_loc: Location, closing_loc: Location?, predicate: Prism::node, statements: StatementsNode?, location: Location } # - # source://prism//lib/prism/node.rb#18844 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#18440 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#18893 + # source://prism//lib/prism/node.rb#18491 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#18883 + # source://prism//lib/prism/node.rb#18481 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#18853 + # source://prism//lib/prism/node.rb#18449 sig { returns(Prism::Location) } def keyword_loc; end - # attr_reader predicate: Node + # attr_reader predicate: Prism::node # - # source://prism//lib/prism/node.rb#18871 + # source://prism//lib/prism/node.rb#18469 sig { returns(Prism::Node) } def predicate; end - # source://prism//lib/prism/node.rb#18805 + # source://prism//lib/prism/node.rb#18409 def set_newline_flag(newline_marked); end # attr_reader statements: StatementsNode? # - # source://prism//lib/prism/node.rb#18874 + # source://prism//lib/prism/node.rb#18472 sig { returns(T.nilable(Prism::StatementsNode)) } def statements; end @@ -30715,14 +35368,15 @@ class Prism::WhileNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#18924 + # source://prism//lib/prism/node.rb#18522 + sig { override.returns(Symbol) } def type; end private # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#18849 + # source://prism//lib/prism/node.rb#18445 sig { returns(Integer) } def flags; end @@ -30734,7 +35388,7 @@ class Prism::WhileNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#18934 + # source://prism//lib/prism/node.rb#18532 def type; end end end @@ -30744,7 +35398,7 @@ end # `foo` # ^^^^^ # -# source://prism//lib/prism/node.rb#18943 +# source://prism//lib/prism/node.rb#18541 class Prism::XStringNode < ::Prism::Node include ::Prism::HeredocQuery @@ -30752,83 +35406,104 @@ class Prism::XStringNode < ::Prism::Node # # @return [XStringNode] a new instance of XStringNode # - # source://prism//lib/prism/node.rb#18945 + # source://prism//lib/prism/node.rb#18543 + sig do + params( + source: Prism::Source, + flags: Integer, + opening_loc: Prism::Location, + content_loc: Prism::Location, + closing_loc: Prism::Location, + unescaped: String, + location: Prism::Location + ).void + end def initialize(source, flags, opening_loc, content_loc, closing_loc, unescaped, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#18957 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#18555 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18962 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#18560 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def closing: () -> String # - # source://prism//lib/prism/node.rb#19044 + # source://prism//lib/prism/node.rb#18637 sig { returns(String) } def closing; end # attr_reader closing_loc: Location # - # source://prism//lib/prism/node.rb#19014 + # source://prism//lib/prism/node.rb#18606 sig { returns(Prism::Location) } def closing_loc; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#18972 + # source://prism//lib/prism/node.rb#18570 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#18967 + # source://prism//lib/prism/node.rb#18565 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end # def content: () -> String # - # source://prism//lib/prism/node.rb#19039 + # source://prism//lib/prism/node.rb#18632 sig { returns(String) } def content; end # attr_reader content_loc: Location # - # source://prism//lib/prism/node.rb#19008 + # source://prism//lib/prism/node.rb#18599 sig { returns(Prism::Location) } def content_loc; end - # def copy: (**params) -> XStringNode + # def copy: (?flags: Integer, ?opening_loc: Location, ?content_loc: Location, ?closing_loc: Location, ?unescaped: String, ?location: Location) -> XStringNode # - # source://prism//lib/prism/node.rb#18977 - sig { params(params: T.untyped).returns(Prism::XStringNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#18575 + sig do + params( + flags: Integer, + opening_loc: Prism::Location, + content_loc: Prism::Location, + closing_loc: Prism::Location, + unescaped: String, + location: Prism::Location + ).returns(Prism::XStringNode) + end + def copy(flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#18962 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#18560 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, opening_loc: Location, content_loc: Location, closing_loc: Location, unescaped: String, location: Location } # - # source://prism//lib/prism/node.rb#18993 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#18583 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def forced_binary_encoding?: () -> bool # # @return [Boolean] # - # source://prism//lib/prism/node.rb#19029 + # source://prism//lib/prism/node.rb#18622 sig { returns(T::Boolean) } def forced_binary_encoding?; end @@ -30836,27 +35511,38 @@ class Prism::XStringNode < ::Prism::Node # # @return [Boolean] # - # source://prism//lib/prism/node.rb#19024 + # source://prism//lib/prism/node.rb#18617 sig { returns(T::Boolean) } def forced_utf8_encoding?; end + sig { returns(T::Boolean) } + def heredoc?; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#19049 + # source://prism//lib/prism/node.rb#18642 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def opening: () -> String # - # source://prism//lib/prism/node.rb#19034 + # source://prism//lib/prism/node.rb#18627 sig { returns(String) } def opening; end # attr_reader opening_loc: Location # - # source://prism//lib/prism/node.rb#19002 + # source://prism//lib/prism/node.rb#18592 sig { returns(Prism::Location) } def opening_loc; end + # Occasionally it's helpful to treat a string as if it were interpolated so + # that there's a consistent interface for working with strings. + # + # source://prism//lib/prism/node_ext.rb#72 + sig { returns(Prism::InterpolatedXStringNode) } + def to_interpolated; end + # Sometimes you want to check an instance of a node against a list of # classes to see what kind of behavior to perform. Usually this is done by # calling `[cls1, cls2].include?(node.class)` or putting the node into a @@ -30872,12 +35558,13 @@ class Prism::XStringNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#19074 + # source://prism//lib/prism/node.rb#18667 + sig { override.returns(Symbol) } def type; end # attr_reader unescaped: String # - # source://prism//lib/prism/node.rb#19020 + # source://prism//lib/prism/node.rb#18613 sig { returns(String) } def unescaped; end @@ -30885,7 +35572,7 @@ class Prism::XStringNode < ::Prism::Node # private attr_reader flags: Integer # - # source://prism//lib/prism/node.rb#18998 + # source://prism//lib/prism/node.rb#18588 sig { returns(Integer) } def flags; end @@ -30897,7 +35584,7 @@ class Prism::XStringNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#19084 + # source://prism//lib/prism/node.rb#18677 def type; end end end @@ -30907,104 +35594,124 @@ end # yield 1 # ^^^^^^^ # -# source://prism//lib/prism/node.rb#19093 +# source://prism//lib/prism/node.rb#18686 class Prism::YieldNode < ::Prism::Node # def initialize: (Location keyword_loc, Location? lparen_loc, ArgumentsNode? arguments, Location? rparen_loc, Location location) -> void # # @return [YieldNode] a new instance of YieldNode # - # source://prism//lib/prism/node.rb#19095 + # source://prism//lib/prism/node.rb#18688 + sig do + params( + source: Prism::Source, + keyword_loc: Prism::Location, + lparen_loc: T.nilable(Prism::Location), + arguments: T.nilable(Prism::ArgumentsNode), + rparen_loc: T.nilable(Prism::Location), + location: Prism::Location + ).void + end def initialize(source, keyword_loc, lparen_loc, arguments, rparen_loc, location); end # def accept: (Visitor visitor) -> void # - # source://prism//lib/prism/node.rb#19106 - sig { params(visitor: Prism::Visitor).void } + # source://prism//lib/prism/node.rb#18699 + sig { override.params(visitor: Prism::Visitor).returns(T.untyped) } def accept(visitor); end # attr_reader arguments: ArgumentsNode? # - # source://prism//lib/prism/node.rb#19166 + # source://prism//lib/prism/node.rb#18754 sig { returns(T.nilable(Prism::ArgumentsNode)) } def arguments; end # def child_nodes: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#19111 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#18704 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def child_nodes; end # def comment_targets: () -> Array[Node | Location] # - # source://prism//lib/prism/node.rb#19123 + # source://prism//lib/prism/node.rb#18716 + sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) } def comment_targets; end # def compact_child_nodes: () -> Array[Node] # - # source://prism//lib/prism/node.rb#19116 + # source://prism//lib/prism/node.rb#18709 + sig { override.returns(T::Array[Prism::Node]) } def compact_child_nodes; end - # def copy: (**params) -> YieldNode + # def copy: (?keyword_loc: Location, ?lparen_loc: Location?, ?arguments: ArgumentsNode?, ?rparen_loc: Location?, ?location: Location) -> YieldNode # - # source://prism//lib/prism/node.rb#19128 - sig { params(params: T.untyped).returns(Prism::YieldNode) } - def copy(**params); end + # source://prism//lib/prism/node.rb#18721 + sig do + params( + keyword_loc: Prism::Location, + lparen_loc: T.nilable(Prism::Location), + arguments: T.nilable(Prism::ArgumentsNode), + rparen_loc: T.nilable(Prism::Location), + location: Prism::Location + ).returns(Prism::YieldNode) + end + def copy(keyword_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), arguments: T.unsafe(nil), rparen_loc: T.unsafe(nil), location: T.unsafe(nil)); end # def child_nodes: () -> Array[nil | Node] # def deconstruct: () -> Array[nil | Node] # - # source://prism//lib/prism/node.rb#19111 - sig { returns(T::Array[T.nilable(Prism::Node)]) } + # source://prism//lib/prism/node.rb#18704 + sig { override.returns(T::Array[T.nilable(Prism::Node)]) } def deconstruct; end # def deconstruct_keys: (Array[Symbol] keys) -> { keyword_loc: Location, lparen_loc: Location?, arguments: ArgumentsNode?, rparen_loc: Location?, location: Location } # - # source://prism//lib/prism/node.rb#19143 - sig do - params( - keys: T::Array[Symbol] - ).returns(T::Hash[Symbol, T.nilable(T.any(Prism::Node, T::Array[Prism::Node], String, Prism::Token, T::Array[Prism::Token], Prism::Location))]) - end + # source://prism//lib/prism/node.rb#18729 + sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) } def deconstruct_keys(keys); end + sig { override.returns(T::Array[Prism::Reflection::Field]) } + def fields; end + # def inspect(NodeInspector inspector) -> String # - # source://prism//lib/prism/node.rb#19197 + # source://prism//lib/prism/node.rb#18786 + sig { params(inspector: T.untyped).returns(String) } def inspect(inspector = T.unsafe(nil)); end # def keyword: () -> String # - # source://prism//lib/prism/node.rb#19182 + # source://prism//lib/prism/node.rb#18771 sig { returns(String) } def keyword; end # attr_reader keyword_loc: Location # - # source://prism//lib/prism/node.rb#19148 + # source://prism//lib/prism/node.rb#18734 sig { returns(Prism::Location) } def keyword_loc; end # def lparen: () -> String? # - # source://prism//lib/prism/node.rb#19187 + # source://prism//lib/prism/node.rb#18776 sig { returns(T.nilable(String)) } def lparen; end # attr_reader lparen_loc: Location? # - # source://prism//lib/prism/node.rb#19154 + # source://prism//lib/prism/node.rb#18741 sig { returns(T.nilable(Prism::Location)) } def lparen_loc; end # def rparen: () -> String? # - # source://prism//lib/prism/node.rb#19192 + # source://prism//lib/prism/node.rb#18781 sig { returns(T.nilable(String)) } def rparen; end # attr_reader rparen_loc: Location? # - # source://prism//lib/prism/node.rb#19169 + # source://prism//lib/prism/node.rb#18757 sig { returns(T.nilable(Prism::Location)) } def rparen_loc; end @@ -31023,7 +35730,8 @@ class Prism::YieldNode < ::Prism::Node # # def type: () -> Symbol # - # source://prism//lib/prism/node.rb#19225 + # source://prism//lib/prism/node.rb#18814 + sig { override.returns(Symbol) } def type; end class << self @@ -31034,7 +35742,13 @@ class Prism::YieldNode < ::Prism::Node # # def self.type: () -> Symbol # - # source://prism//lib/prism/node.rb#19235 + # source://prism//lib/prism/node.rb#18824 def type; end end end + +# We keep this shim in here because our client libraries might not have +# ruby_parser in their bundle. +class Sexp < ::Array + Elem = type_member { { fixed: T.untyped }} +end diff --git a/sorbet/rbi/gems/rbi@0.1.9.rbi b/sorbet/rbi/gems/rbi@0.1.11.rbi similarity index 90% rename from sorbet/rbi/gems/rbi@0.1.9.rbi rename to sorbet/rbi/gems/rbi@0.1.11.rbi index 2dc769936..4833fbdd5 100644 --- a/sorbet/rbi/gems/rbi@0.1.9.rbi +++ b/sorbet/rbi/gems/rbi@0.1.11.rbi @@ -7,13 +7,13 @@ # source://rbi//lib/rbi/loc.rb#4 module RBI; end -# source://rbi//lib/rbi/model.rb#968 +# source://rbi//lib/rbi/model.rb#1041 class RBI::Arg < ::RBI::Node - # source://rbi//lib/rbi/model.rb#980 + # source://rbi//lib/rbi/model.rb#1053 sig { params(value: ::String, loc: T.nilable(::RBI::Loc)).void } def initialize(value, loc: T.unsafe(nil)); end - # source://rbi//lib/rbi/model.rb#986 + # source://rbi//lib/rbi/model.rb#1059 sig { params(other: T.nilable(::Object)).returns(T::Boolean) } def ==(other); end @@ -21,11 +21,11 @@ class RBI::Arg < ::RBI::Node sig { override.params(v: ::RBI::Printer).void } def accept_printer(v); end - # source://rbi//lib/rbi/model.rb#991 + # source://rbi//lib/rbi/model.rb#1064 sig { returns(::String) } def to_s; end - # source://rbi//lib/rbi/model.rb#972 + # source://rbi//lib/rbi/model.rb#1045 sig { returns(::String) } def value; end end @@ -197,9 +197,9 @@ class RBI::BlankLine < ::RBI::Comment def accept_printer(v); end end -# source://rbi//lib/rbi/model.rb#741 +# source://rbi//lib/rbi/model.rb#814 class RBI::BlockParam < ::RBI::Param - # source://rbi//lib/rbi/model.rb#752 + # source://rbi//lib/rbi/model.rb#825 sig do params( name: ::String, @@ -210,7 +210,7 @@ class RBI::BlockParam < ::RBI::Param end def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#763 + # source://rbi//lib/rbi/model.rb#836 sig { params(other: T.nilable(::Object)).returns(T::Boolean) } def ==(other); end @@ -222,7 +222,7 @@ class RBI::BlockParam < ::RBI::Param sig { override.params(v: ::RBI::Printer, last: T::Boolean).void } def print_comment_leading_space(v, last:); end - # source://rbi//lib/rbi/model.rb#758 + # source://rbi//lib/rbi/model.rb#831 sig { override.returns(::String) } def to_s; end end @@ -379,11 +379,11 @@ class RBI::Const < ::RBI::NodeWithComments def value; end end -# source://rbi//lib/rbi/model.rb#816 +# source://rbi//lib/rbi/model.rb#889 class RBI::Extend < ::RBI::Mixin include ::RBI::Indexable - # source://rbi//lib/rbi/model.rb#828 + # source://rbi//lib/rbi/model.rb#901 sig do params( name: ::String, @@ -403,7 +403,7 @@ class RBI::Extend < ::RBI::Mixin sig { override.returns(T::Array[::String]) } def index_ids; end - # source://rbi//lib/rbi/model.rb#834 + # source://rbi//lib/rbi/model.rb#907 sig { override.returns(::String) } def to_s; end end @@ -568,11 +568,11 @@ end # Sorbet's misc. # -# source://rbi//lib/rbi/model.rb#1294 +# source://rbi//lib/rbi/model.rb#1372 class RBI::Helper < ::RBI::NodeWithComments include ::RBI::Indexable - # source://rbi//lib/rbi/model.rb#1308 + # source://rbi//lib/rbi/model.rb#1386 sig do params( name: ::String, @@ -595,20 +595,20 @@ class RBI::Helper < ::RBI::NodeWithComments sig { override.returns(T::Array[::String]) } def index_ids; end - # source://rbi//lib/rbi/model.rb#1298 + # source://rbi//lib/rbi/model.rb#1376 sig { returns(::String) } def name; end - # source://rbi//lib/rbi/model.rb#1315 + # source://rbi//lib/rbi/model.rb#1393 sig { override.returns(::String) } def to_s; end end -# source://rbi//lib/rbi/model.rb#793 +# source://rbi//lib/rbi/model.rb#866 class RBI::Include < ::RBI::Mixin include ::RBI::Indexable - # source://rbi//lib/rbi/model.rb#805 + # source://rbi//lib/rbi/model.rb#878 sig do params( name: ::String, @@ -628,7 +628,7 @@ class RBI::Include < ::RBI::Mixin sig { override.returns(T::Array[::String]) } def index_ids; end - # source://rbi//lib/rbi/model.rb#811 + # source://rbi//lib/rbi/model.rb#884 sig { override.returns(::String) } def to_s; end end @@ -668,7 +668,7 @@ class RBI::Index < ::RBI::Visitor end end -# A Node that can be refered to by a unique ID inside an index +# A Node that can be referred to by a unique ID inside an index # # @abstract Subclasses must implement the `abstract` methods below. # @@ -688,13 +688,13 @@ module RBI::Indexable def index_ids; end end -# source://rbi//lib/rbi/model.rb#996 +# source://rbi//lib/rbi/model.rb#1069 class RBI::KwArg < ::RBI::Arg - # source://rbi//lib/rbi/model.rb#1009 + # source://rbi//lib/rbi/model.rb#1082 sig { params(keyword: ::String, value: ::String, loc: T.nilable(::RBI::Loc)).void } def initialize(keyword, value, loc: T.unsafe(nil)); end - # source://rbi//lib/rbi/model.rb#1015 + # source://rbi//lib/rbi/model.rb#1088 sig { params(other: T.nilable(::Object)).returns(T::Boolean) } def ==(other); end @@ -702,18 +702,18 @@ class RBI::KwArg < ::RBI::Arg sig { override.params(v: ::RBI::Printer).void } def accept_printer(v); end - # source://rbi//lib/rbi/model.rb#1000 + # source://rbi//lib/rbi/model.rb#1073 sig { returns(::String) } def keyword; end - # source://rbi//lib/rbi/model.rb#1020 + # source://rbi//lib/rbi/model.rb#1093 sig { returns(::String) } def to_s; end end -# source://rbi//lib/rbi/model.rb#682 +# source://rbi//lib/rbi/model.rb#755 class RBI::KwOptParam < ::RBI::Param - # source://rbi//lib/rbi/model.rb#697 + # source://rbi//lib/rbi/model.rb#770 sig do params( name: ::String, @@ -725,7 +725,7 @@ class RBI::KwOptParam < ::RBI::Param end def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#709 + # source://rbi//lib/rbi/model.rb#782 sig { params(other: T.nilable(::Object)).returns(T::Boolean) } def ==(other); end @@ -737,18 +737,18 @@ class RBI::KwOptParam < ::RBI::Param sig { override.params(v: ::RBI::Printer, last: T::Boolean).void } def print_comment_leading_space(v, last:); end - # source://rbi//lib/rbi/model.rb#704 + # source://rbi//lib/rbi/model.rb#777 sig { override.returns(::String) } def to_s; end - # source://rbi//lib/rbi/model.rb#686 + # source://rbi//lib/rbi/model.rb#759 sig { returns(::String) } def value; end end -# source://rbi//lib/rbi/model.rb#655 +# source://rbi//lib/rbi/model.rb#728 class RBI::KwParam < ::RBI::Param - # source://rbi//lib/rbi/model.rb#666 + # source://rbi//lib/rbi/model.rb#739 sig do params( name: ::String, @@ -759,7 +759,7 @@ class RBI::KwParam < ::RBI::Param end def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#677 + # source://rbi//lib/rbi/model.rb#750 sig { params(other: T.nilable(::Object)).returns(T::Boolean) } def ==(other); end @@ -771,14 +771,14 @@ class RBI::KwParam < ::RBI::Param sig { override.params(v: ::RBI::Printer, last: T::Boolean).void } def print_comment_leading_space(v, last:); end - # source://rbi//lib/rbi/model.rb#672 + # source://rbi//lib/rbi/model.rb#745 sig { override.returns(::String) } def to_s; end end -# source://rbi//lib/rbi/model.rb#714 +# source://rbi//lib/rbi/model.rb#787 class RBI::KwRestParam < ::RBI::Param - # source://rbi//lib/rbi/model.rb#725 + # source://rbi//lib/rbi/model.rb#798 sig do params( name: ::String, @@ -789,7 +789,7 @@ class RBI::KwRestParam < ::RBI::Param end def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#736 + # source://rbi//lib/rbi/model.rb#809 sig { params(other: T.nilable(::Object)).returns(T::Boolean) } def ==(other); end @@ -801,7 +801,7 @@ class RBI::KwRestParam < ::RBI::Param sig { override.params(v: ::RBI::Printer, last: T::Boolean).void } def print_comment_leading_space(v, last:); end - # source://rbi//lib/rbi/model.rb#731 + # source://rbi//lib/rbi/model.rb#804 sig { override.returns(::String) } def to_s; end end @@ -907,11 +907,55 @@ class RBI::Method < ::RBI::NodeWithComments sig { override.params(v: ::RBI::Printer).void } def accept_printer(v); end + # source://rbi//lib/rbi/model.rb#568 + sig { params(name: ::String).void } + def add_block_param(name); end + + # source://rbi//lib/rbi/model.rb#558 + sig { params(name: ::String, default_value: ::String).void } + def add_kw_opt_param(name, default_value); end + + # source://rbi//lib/rbi/model.rb#553 + sig { params(name: ::String).void } + def add_kw_param(name); end + + # source://rbi//lib/rbi/model.rb#563 + sig { params(name: ::String).void } + def add_kw_rest_param(name); end + + # source://rbi//lib/rbi/model.rb#543 + sig { params(name: ::String, default_value: ::String).void } + def add_opt_param(name, default_value); end + + # source://rbi//lib/rbi/model.rb#538 + sig { params(name: ::String).void } + def add_param(name); end + + # source://rbi//lib/rbi/model.rb#548 + sig { params(name: ::String).void } + def add_rest_param(name); end + + # source://rbi//lib/rbi/model.rb#585 + sig do + params( + params: T::Array[::RBI::SigParam], + return_type: T.nilable(::String), + is_abstract: T::Boolean, + is_override: T::Boolean, + is_overridable: T::Boolean, + is_final: T::Boolean, + type_params: T::Array[::String], + checked: T.nilable(::Symbol), + block: T.proc.params(node: ::RBI::Sig).void + ).void + end + def add_sig(params: T.unsafe(nil), return_type: T.unsafe(nil), is_abstract: T.unsafe(nil), is_override: T.unsafe(nil), is_overridable: T.unsafe(nil), is_final: T.unsafe(nil), type_params: T.unsafe(nil), checked: T.unsafe(nil), &block); end + # source://rbi//lib/rbi/rewriters/merge_trees.rb#461 sig { override.params(other: ::RBI::Node).returns(T::Boolean) } def compatible_with?(other); end - # source://rbi//lib/rbi/model.rb#538 + # source://rbi//lib/rbi/model.rb#611 sig { returns(::String) } def fully_qualified_name; end @@ -962,7 +1006,7 @@ class RBI::Method < ::RBI::NodeWithComments # source://rbi//lib/rbi/model.rb#499 def sigs=(_arg0); end - # source://rbi//lib/rbi/model.rb#547 + # source://rbi//lib/rbi/model.rb#620 sig { override.returns(::String) } def to_s; end @@ -976,11 +1020,11 @@ class RBI::Method < ::RBI::NodeWithComments def visibility=(_arg0); end end -# source://rbi//lib/rbi/model.rb#1355 +# source://rbi//lib/rbi/model.rb#1433 class RBI::MixesInClassMethods < ::RBI::Mixin include ::RBI::Indexable - # source://rbi//lib/rbi/model.rb#1367 + # source://rbi//lib/rbi/model.rb#1445 sig do params( name: ::String, @@ -1000,7 +1044,7 @@ class RBI::MixesInClassMethods < ::RBI::Mixin sig { override.returns(T::Array[::String]) } def index_ids; end - # source://rbi//lib/rbi/model.rb#1373 + # source://rbi//lib/rbi/model.rb#1451 sig { override.returns(::String) } def to_s; end end @@ -1009,11 +1053,11 @@ end # # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below. # -# source://rbi//lib/rbi/model.rb#770 +# source://rbi//lib/rbi/model.rb#843 class RBI::Mixin < ::RBI::NodeWithComments abstract! - # source://rbi//lib/rbi/model.rb#787 + # source://rbi//lib/rbi/model.rb#860 sig do params( name: ::String, @@ -1032,7 +1076,7 @@ class RBI::Mixin < ::RBI::NodeWithComments sig { override.params(other: ::RBI::Node).returns(T::Boolean) } def compatible_with?(other); end - # source://rbi//lib/rbi/model.rb#777 + # source://rbi//lib/rbi/model.rb#850 sig { returns(T::Array[::String]) } def names; end end @@ -1202,9 +1246,9 @@ class RBI::NodeWithComments < ::RBI::Node def version_requirements; end end -# source://rbi//lib/rbi/model.rb#601 +# source://rbi//lib/rbi/model.rb#674 class RBI::OptParam < ::RBI::Param - # source://rbi//lib/rbi/model.rb#616 + # source://rbi//lib/rbi/model.rb#689 sig do params( name: ::String, @@ -1216,7 +1260,7 @@ class RBI::OptParam < ::RBI::Param end def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#623 + # source://rbi//lib/rbi/model.rb#696 sig { params(other: T.nilable(::Object)).returns(T::Boolean) } def ==(other); end @@ -1228,18 +1272,18 @@ class RBI::OptParam < ::RBI::Param sig { override.params(v: ::RBI::Printer, last: T::Boolean).void } def print_comment_leading_space(v, last:); end - # source://rbi//lib/rbi/model.rb#605 + # source://rbi//lib/rbi/model.rb#678 sig { returns(::String) } def value; end end # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below. # -# source://rbi//lib/rbi/model.rb#552 +# source://rbi//lib/rbi/model.rb#625 class RBI::Param < ::RBI::NodeWithComments abstract! - # source://rbi//lib/rbi/model.rb#568 + # source://rbi//lib/rbi/model.rb#641 sig { params(name: ::String, loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void } def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil)); end @@ -1251,7 +1295,7 @@ class RBI::Param < ::RBI::NodeWithComments sig { returns(T::Array[::String]) } def comments_lines; end - # source://rbi//lib/rbi/model.rb#559 + # source://rbi//lib/rbi/model.rb#632 sig { returns(::String) } def name; end @@ -1259,7 +1303,7 @@ class RBI::Param < ::RBI::NodeWithComments sig { params(v: ::RBI::Printer, last: T::Boolean).void } def print_comment_leading_space(v, last:); end - # source://rbi//lib/rbi/model.rb#574 + # source://rbi//lib/rbi/model.rb#647 sig { override.returns(::String) } def to_s; end end @@ -1566,9 +1610,9 @@ class RBI::Printer < ::RBI::Visitor def visit_file(file); end end -# source://rbi//lib/rbi/model.rb#909 +# source://rbi//lib/rbi/model.rb#982 class RBI::Private < ::RBI::Visibility - # source://rbi//lib/rbi/model.rb#919 + # source://rbi//lib/rbi/model.rb#992 sig do params( loc: T.nilable(::RBI::Loc), @@ -1579,9 +1623,9 @@ class RBI::Private < ::RBI::Visibility def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end end -# source://rbi//lib/rbi/model.rb#893 +# source://rbi//lib/rbi/model.rb#966 class RBI::Protected < ::RBI::Visibility - # source://rbi//lib/rbi/model.rb#903 + # source://rbi//lib/rbi/model.rb#976 sig do params( loc: T.nilable(::RBI::Loc), @@ -1592,9 +1636,9 @@ class RBI::Protected < ::RBI::Visibility def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end end -# source://rbi//lib/rbi/model.rb#877 +# source://rbi//lib/rbi/model.rb#950 class RBI::Public < ::RBI::Visibility - # source://rbi//lib/rbi/model.rb#887 + # source://rbi//lib/rbi/model.rb#960 sig do params( loc: T.nilable(::RBI::Loc), @@ -1605,9 +1649,9 @@ class RBI::Public < ::RBI::Visibility def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end end -# source://rbi//lib/rbi/model.rb#579 +# source://rbi//lib/rbi/model.rb#652 class RBI::ReqParam < ::RBI::Param - # source://rbi//lib/rbi/model.rb#590 + # source://rbi//lib/rbi/model.rb#663 sig do params( name: ::String, @@ -1618,16 +1662,16 @@ class RBI::ReqParam < ::RBI::Param end def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#596 + # source://rbi//lib/rbi/model.rb#669 sig { params(other: T.nilable(::Object)).returns(T::Boolean) } def ==(other); end end -# source://rbi//lib/rbi/model.rb#1378 +# source://rbi//lib/rbi/model.rb#1456 class RBI::RequiresAncestor < ::RBI::NodeWithComments include ::RBI::Indexable - # source://rbi//lib/rbi/model.rb#1391 + # source://rbi//lib/rbi/model.rb#1469 sig { params(name: ::String, loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void } def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil)); end @@ -1639,18 +1683,18 @@ class RBI::RequiresAncestor < ::RBI::NodeWithComments sig { override.returns(T::Array[::String]) } def index_ids; end - # source://rbi//lib/rbi/model.rb#1382 + # source://rbi//lib/rbi/model.rb#1460 sig { returns(::String) } def name; end - # source://rbi//lib/rbi/model.rb#1397 + # source://rbi//lib/rbi/model.rb#1475 sig { override.returns(::String) } def to_s; end end -# source://rbi//lib/rbi/model.rb#628 +# source://rbi//lib/rbi/model.rb#701 class RBI::RestParam < ::RBI::Param - # source://rbi//lib/rbi/model.rb#639 + # source://rbi//lib/rbi/model.rb#712 sig do params( name: ::String, @@ -1661,7 +1705,7 @@ class RBI::RestParam < ::RBI::Param end def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#650 + # source://rbi//lib/rbi/model.rb#723 sig { params(other: T.nilable(::Object)).returns(T::Boolean) } def ==(other); end @@ -1673,7 +1717,7 @@ class RBI::RestParam < ::RBI::Param sig { override.params(v: ::RBI::Printer, last: T::Boolean).void } def print_comment_leading_space(v, last:); end - # source://rbi//lib/rbi/model.rb#645 + # source://rbi//lib/rbi/model.rb#718 sig { override.returns(::String) } def to_s; end end @@ -1900,7 +1944,7 @@ class RBI::Rewriters::Merge::Conflict < ::T::Struct def to_s; end class << self - # source://sorbet-runtime/0.5.11262/lib/types/struct.rb#13 + # source://sorbet-runtime/0.5.11346/lib/types/struct.rb#13 def inherited(s); end end end @@ -2117,7 +2161,7 @@ class RBI::Rewriters::RemoveKnownDefinitions::Operation < ::T::Struct def to_s; end class << self - # source://sorbet-runtime/0.5.11262/lib/types/struct.rb#13 + # source://sorbet-runtime/0.5.11346/lib/types/struct.rb#13 def inherited(s); end end end @@ -2231,11 +2275,11 @@ end # Sends # -# source://rbi//lib/rbi/model.rb#927 +# source://rbi//lib/rbi/model.rb#1000 class RBI::Send < ::RBI::NodeWithComments include ::RBI::Indexable - # source://rbi//lib/rbi/model.rb#945 + # source://rbi//lib/rbi/model.rb#1018 sig do params( method: ::String, @@ -2247,11 +2291,11 @@ class RBI::Send < ::RBI::NodeWithComments end def initialize(method, args = T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#953 + # source://rbi//lib/rbi/model.rb#1026 sig { params(arg: ::RBI::Arg).void } def <<(arg); end - # source://rbi//lib/rbi/model.rb#958 + # source://rbi//lib/rbi/model.rb#1031 sig { params(other: T.nilable(::Object)).returns(T::Boolean) } def ==(other); end @@ -2259,7 +2303,7 @@ class RBI::Send < ::RBI::NodeWithComments sig { override.params(v: ::RBI::Printer).void } def accept_printer(v); end - # source://rbi//lib/rbi/model.rb#934 + # source://rbi//lib/rbi/model.rb#1007 sig { returns(T::Array[::RBI::Arg]) } def args; end @@ -2271,20 +2315,20 @@ class RBI::Send < ::RBI::NodeWithComments sig { override.returns(T::Array[::String]) } def index_ids; end - # source://rbi//lib/rbi/model.rb#931 + # source://rbi//lib/rbi/model.rb#1004 sig { returns(::String) } def method; end - # source://rbi//lib/rbi/model.rb#963 + # source://rbi//lib/rbi/model.rb#1036 sig { returns(::String) } def to_s; end end # Sorbet's sigs # -# source://rbi//lib/rbi/model.rb#1027 +# source://rbi//lib/rbi/model.rb#1100 class RBI::Sig < ::RBI::Node - # source://rbi//lib/rbi/model.rb#1059 + # source://rbi//lib/rbi/model.rb#1132 sig do params( params: T::Array[::RBI::SigParam], @@ -2301,11 +2345,11 @@ class RBI::Sig < ::RBI::Node end def initialize(params: T.unsafe(nil), return_type: T.unsafe(nil), is_abstract: T.unsafe(nil), is_override: T.unsafe(nil), is_overridable: T.unsafe(nil), is_final: T.unsafe(nil), type_params: T.unsafe(nil), checked: T.unsafe(nil), loc: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#1084 + # source://rbi//lib/rbi/model.rb#1157 sig { params(param: ::RBI::SigParam).void } def <<(param); end - # source://rbi//lib/rbi/model.rb#1089 + # source://rbi//lib/rbi/model.rb#1167 sig { params(other: ::Object).returns(T::Boolean) } def ==(other); end @@ -2313,76 +2357,80 @@ class RBI::Sig < ::RBI::Node sig { override.params(v: ::RBI::Printer).void } def accept_printer(v); end - # source://rbi//lib/rbi/model.rb#1043 + # source://rbi//lib/rbi/model.rb#1162 + sig { params(name: ::String, type: ::String).void } + def add_param(name, type); end + + # source://rbi//lib/rbi/model.rb#1116 sig { returns(T.nilable(::Symbol)) } def checked; end # @return [Symbol, nil] # - # source://rbi//lib/rbi/model.rb#1043 + # source://rbi//lib/rbi/model.rb#1116 def checked=(_arg0); end # source://rbi//lib/rbi/printer.rb#656 sig { returns(T::Boolean) } def inline_params?; end - # source://rbi//lib/rbi/model.rb#1037 + # source://rbi//lib/rbi/model.rb#1110 sig { returns(T::Boolean) } def is_abstract; end # @return [Boolean] # - # source://rbi//lib/rbi/model.rb#1037 + # source://rbi//lib/rbi/model.rb#1110 def is_abstract=(_arg0); end # @return [Boolean] # - # source://rbi//lib/rbi/model.rb#1037 + # source://rbi//lib/rbi/model.rb#1110 def is_final; end # @return [Boolean] # - # source://rbi//lib/rbi/model.rb#1037 + # source://rbi//lib/rbi/model.rb#1110 def is_final=(_arg0); end # @return [Boolean] # - # source://rbi//lib/rbi/model.rb#1037 + # source://rbi//lib/rbi/model.rb#1110 def is_overridable; end # @return [Boolean] # - # source://rbi//lib/rbi/model.rb#1037 + # source://rbi//lib/rbi/model.rb#1110 def is_overridable=(_arg0); end # @return [Boolean] # - # source://rbi//lib/rbi/model.rb#1037 + # source://rbi//lib/rbi/model.rb#1110 def is_override; end # @return [Boolean] # - # source://rbi//lib/rbi/model.rb#1037 + # source://rbi//lib/rbi/model.rb#1110 def is_override=(_arg0); end # source://rbi//lib/rbi/printer.rb#651 sig { override.returns(T::Boolean) } def oneline?; end - # source://rbi//lib/rbi/model.rb#1031 + # source://rbi//lib/rbi/model.rb#1104 sig { returns(T::Array[::RBI::SigParam]) } def params; end - # source://rbi//lib/rbi/model.rb#1034 + # source://rbi//lib/rbi/model.rb#1107 sig { returns(T.nilable(::String)) } def return_type; end # @return [String, nil] # - # source://rbi//lib/rbi/model.rb#1034 + # source://rbi//lib/rbi/model.rb#1107 def return_type=(_arg0); end - # source://rbi//lib/rbi/model.rb#1040 + # source://rbi//lib/rbi/model.rb#1113 sig { returns(T::Array[::String]) } def type_params; end @@ -2401,9 +2449,9 @@ class RBI::Sig < ::RBI::Node def sig_modifiers; end end -# source://rbi//lib/rbi/model.rb#1098 +# source://rbi//lib/rbi/model.rb#1176 class RBI::SigParam < ::RBI::NodeWithComments - # source://rbi//lib/rbi/model.rb#1113 + # source://rbi//lib/rbi/model.rb#1191 sig do params( name: ::String, @@ -2415,7 +2463,7 @@ class RBI::SigParam < ::RBI::NodeWithComments end def initialize(name, type, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#1121 + # source://rbi//lib/rbi/model.rb#1199 sig { params(other: ::Object).returns(T::Boolean) } def ==(other); end @@ -2427,7 +2475,7 @@ class RBI::SigParam < ::RBI::NodeWithComments sig { returns(T::Array[::String]) } def comments_lines; end - # source://rbi//lib/rbi/model.rb#1102 + # source://rbi//lib/rbi/model.rb#1180 sig { returns(::String) } def name; end @@ -2437,7 +2485,7 @@ class RBI::SigParam < ::RBI::NodeWithComments # @return [String] # - # source://rbi//lib/rbi/model.rb#1102 + # source://rbi//lib/rbi/model.rb#1180 def type; end end @@ -2519,9 +2567,9 @@ end # Sorbet's T::Enum # -# source://rbi//lib/rbi/model.rb#1239 +# source://rbi//lib/rbi/model.rb#1317 class RBI::TEnum < ::RBI::Class - # source://rbi//lib/rbi/model.rb#1250 + # source://rbi//lib/rbi/model.rb#1328 sig do params( name: ::String, @@ -2533,11 +2581,11 @@ class RBI::TEnum < ::RBI::Class def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end end -# source://rbi//lib/rbi/model.rb#1256 +# source://rbi//lib/rbi/model.rb#1334 class RBI::TEnumBlock < ::RBI::NodeWithComments include ::RBI::Indexable - # source://rbi//lib/rbi/model.rb#1270 + # source://rbi//lib/rbi/model.rb#1348 sig do params( names: T::Array[::String], @@ -2548,7 +2596,7 @@ class RBI::TEnumBlock < ::RBI::NodeWithComments end def initialize(names = T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi//lib/rbi/model.rb#1282 + # source://rbi//lib/rbi/model.rb#1360 sig { params(name: ::String).void } def <<(name); end @@ -2556,7 +2604,7 @@ class RBI::TEnumBlock < ::RBI::NodeWithComments sig { override.params(v: ::RBI::Printer).void } def accept_printer(v); end - # source://rbi//lib/rbi/model.rb#1277 + # source://rbi//lib/rbi/model.rb#1355 sig { returns(T::Boolean) } def empty?; end @@ -2568,20 +2616,20 @@ class RBI::TEnumBlock < ::RBI::NodeWithComments sig { override.params(other: ::RBI::Node).void } def merge_with(other); end - # source://rbi//lib/rbi/model.rb#1260 + # source://rbi//lib/rbi/model.rb#1338 sig { returns(T::Array[::String]) } def names; end - # source://rbi//lib/rbi/model.rb#1287 + # source://rbi//lib/rbi/model.rb#1365 sig { override.returns(::String) } def to_s; end end # Sorbet's T::Struct # -# source://rbi//lib/rbi/model.rb#1128 +# source://rbi//lib/rbi/model.rb#1206 class RBI::TStruct < ::RBI::Class - # source://rbi//lib/rbi/model.rb#1139 + # source://rbi//lib/rbi/model.rb#1217 sig do params( name: ::String, @@ -2593,11 +2641,11 @@ class RBI::TStruct < ::RBI::Class def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end end -# source://rbi//lib/rbi/model.rb#1177 +# source://rbi//lib/rbi/model.rb#1255 class RBI::TStructConst < ::RBI::TStructField include ::RBI::Indexable - # source://rbi//lib/rbi/model.rb#1190 + # source://rbi//lib/rbi/model.rb#1268 sig do params( name: ::String, @@ -2614,7 +2662,7 @@ class RBI::TStructConst < ::RBI::TStructField sig { override.params(other: ::RBI::Node).returns(T::Boolean) } def compatible_with?(other); end - # source://rbi//lib/rbi/model.rb#1196 + # source://rbi//lib/rbi/model.rb#1274 sig { override.returns(T::Array[::String]) } def fully_qualified_names; end @@ -2622,18 +2670,18 @@ class RBI::TStructConst < ::RBI::TStructField sig { override.returns(T::Array[::String]) } def index_ids; end - # source://rbi//lib/rbi/model.rb#1202 + # source://rbi//lib/rbi/model.rb#1280 sig { override.returns(::String) } def to_s; end end # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below. # -# source://rbi//lib/rbi/model.rb#1145 +# source://rbi//lib/rbi/model.rb#1223 class RBI::TStructField < ::RBI::NodeWithComments abstract! - # source://rbi//lib/rbi/model.rb#1166 + # source://rbi//lib/rbi/model.rb#1244 sig do params( name: ::String, @@ -2653,46 +2701,46 @@ class RBI::TStructField < ::RBI::NodeWithComments sig { override.params(other: ::RBI::Node).returns(T::Boolean) } def compatible_with?(other); end - # source://rbi//lib/rbi/model.rb#1155 + # source://rbi//lib/rbi/model.rb#1233 sig { returns(T.nilable(::String)) } def default; end # @return [String, nil] # - # source://rbi//lib/rbi/model.rb#1155 + # source://rbi//lib/rbi/model.rb#1233 def default=(_arg0); end # @abstract # - # source://rbi//lib/rbi/model.rb#1174 + # source://rbi//lib/rbi/model.rb#1252 sig { abstract.returns(T::Array[::String]) } def fully_qualified_names; end - # source://rbi//lib/rbi/model.rb#1152 + # source://rbi//lib/rbi/model.rb#1230 sig { returns(::String) } def name; end # @return [String] # - # source://rbi//lib/rbi/model.rb#1152 + # source://rbi//lib/rbi/model.rb#1230 def name=(_arg0); end # @return [String] # - # source://rbi//lib/rbi/model.rb#1152 + # source://rbi//lib/rbi/model.rb#1230 def type; end # @return [String] # - # source://rbi//lib/rbi/model.rb#1152 + # source://rbi//lib/rbi/model.rb#1230 def type=(_arg0); end end -# source://rbi//lib/rbi/model.rb#1207 +# source://rbi//lib/rbi/model.rb#1285 class RBI::TStructProp < ::RBI::TStructField include ::RBI::Indexable - # source://rbi//lib/rbi/model.rb#1220 + # source://rbi//lib/rbi/model.rb#1298 sig do params( name: ::String, @@ -2709,7 +2757,7 @@ class RBI::TStructProp < ::RBI::TStructField sig { override.params(other: ::RBI::Node).returns(T::Boolean) } def compatible_with?(other); end - # source://rbi//lib/rbi/model.rb#1226 + # source://rbi//lib/rbi/model.rb#1304 sig { override.returns(T::Array[::String]) } def fully_qualified_names; end @@ -2717,7 +2765,7 @@ class RBI::TStructProp < ::RBI::TStructField sig { override.returns(T::Array[::String]) } def index_ids; end - # source://rbi//lib/rbi/model.rb#1232 + # source://rbi//lib/rbi/model.rb#1310 sig { override.returns(::String) } def to_s; end end @@ -2750,7 +2798,7 @@ class RBI::Tree < ::RBI::NodeWithComments sig { params(annotation: ::String, annotate_scopes: T::Boolean, annotate_properties: T::Boolean).void } def annotate!(annotation, annotate_scopes: T.unsafe(nil), annotate_properties: T.unsafe(nil)); end - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#38 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#38 sig do params( name: ::String, @@ -2760,19 +2808,19 @@ class RBI::Tree < ::RBI::NodeWithComments end def create_class(name, superclass_name: T.unsafe(nil), &block); end - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#45 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#45 sig { params(name: ::String, value: ::String).void } def create_constant(name, value:); end - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#55 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#55 sig { params(name: ::String).void } def create_extend(name); end - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#50 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#50 sig { params(name: ::String).void } def create_include(name); end - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#89 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#89 sig do params( name: ::String, @@ -2785,19 +2833,36 @@ class RBI::Tree < ::RBI::NodeWithComments end def create_method(name, parameters: T.unsafe(nil), return_type: T.unsafe(nil), class_method: T.unsafe(nil), visibility: T.unsafe(nil), comments: T.unsafe(nil)); end - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#60 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#113 + sig do + params( + name: ::String, + sigs: T::Array[::RBI::Sig], + parameters: T::Array[::RBI::Param], + class_method: T::Boolean, + visibility: ::RBI::Visibility, + comments: T::Array[::RBI::Comment] + ).void + end + def create_method_with_sigs(name, sigs:, parameters: T.unsafe(nil), class_method: T.unsafe(nil), visibility: T.unsafe(nil), comments: T.unsafe(nil)); end + + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#60 sig { params(name: ::String).void } def create_mixes_in_class_methods(name); end - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#25 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#25 sig { params(name: ::String, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) } def create_module(name, &block); end - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#9 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#9 sig { params(constant: ::Module, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) } def create_path(constant, &block); end - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#74 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#134 + sig { params(parameters: T::Hash[T.any(::String, ::Symbol), ::String], return_type: ::String).returns(::RBI::Sig) } + def create_sig(parameters:, return_type: T.unsafe(nil)); end + + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#74 sig do params( name: ::String, @@ -2863,20 +2928,20 @@ class RBI::Tree < ::RBI::NodeWithComments private - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#116 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#149 sig { params(node: ::RBI::Node).returns(::RBI::Node) } def create_node(node); end - # source://tapioca/0.12.0/lib/tapioca/rbi_ext/model.rb#111 + # source://tapioca/0.13.2/lib/tapioca/rbi_ext/model.rb#144 sig { returns(T::Hash[::String, ::RBI::Node]) } def nodes_cache; end end -# source://rbi//lib/rbi/model.rb#1320 +# source://rbi//lib/rbi/model.rb#1398 class RBI::TypeMember < ::RBI::NodeWithComments include ::RBI::Indexable - # source://rbi//lib/rbi/model.rb#1335 + # source://rbi//lib/rbi/model.rb#1413 sig do params( name: ::String, @@ -2892,7 +2957,7 @@ class RBI::TypeMember < ::RBI::NodeWithComments sig { override.params(v: ::RBI::Printer).void } def accept_printer(v); end - # source://rbi//lib/rbi/model.rb#1343 + # source://rbi//lib/rbi/model.rb#1421 sig { returns(::String) } def fully_qualified_name; end @@ -2900,17 +2965,17 @@ class RBI::TypeMember < ::RBI::NodeWithComments sig { override.returns(T::Array[::String]) } def index_ids; end - # source://rbi//lib/rbi/model.rb#1324 + # source://rbi//lib/rbi/model.rb#1402 sig { returns(::String) } def name; end - # source://rbi//lib/rbi/model.rb#1350 + # source://rbi//lib/rbi/model.rb#1428 sig { override.returns(::String) } def to_s; end # @return [String] # - # source://rbi//lib/rbi/model.rb#1324 + # source://rbi//lib/rbi/model.rb#1402 def value; end end @@ -2936,15 +3001,15 @@ RBI::VERSION = T.let(T.unsafe(nil), String) # # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below. # -# source://rbi//lib/rbi/model.rb#841 +# source://rbi//lib/rbi/model.rb#914 class RBI::Visibility < ::RBI::NodeWithComments abstract! - # source://rbi//lib/rbi/model.rb#851 + # source://rbi//lib/rbi/model.rb#924 sig { params(visibility: ::Symbol, loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void } def initialize(visibility, loc: T.unsafe(nil), comments: T.unsafe(nil)); end - # source://rbi//lib/rbi/model.rb#857 + # source://rbi//lib/rbi/model.rb#930 sig { params(other: ::RBI::Visibility).returns(T::Boolean) } def ==(other); end @@ -2952,19 +3017,19 @@ class RBI::Visibility < ::RBI::NodeWithComments sig { override.params(v: ::RBI::Printer).void } def accept_printer(v); end - # source://rbi//lib/rbi/model.rb#872 + # source://rbi//lib/rbi/model.rb#945 sig { returns(T::Boolean) } def private?; end - # source://rbi//lib/rbi/model.rb#867 + # source://rbi//lib/rbi/model.rb#940 sig { returns(T::Boolean) } def protected?; end - # source://rbi//lib/rbi/model.rb#862 + # source://rbi//lib/rbi/model.rb#935 sig { returns(T::Boolean) } def public?; end - # source://rbi//lib/rbi/model.rb#848 + # source://rbi//lib/rbi/model.rb#921 sig { returns(::Symbol) } def visibility; end end diff --git a/sorbet/rbi/gems/rubocop-sorbet@0.8.0.rbi b/sorbet/rbi/gems/rubocop-sorbet@0.8.1.rbi similarity index 97% rename from sorbet/rbi/gems/rubocop-sorbet@0.8.0.rbi rename to sorbet/rbi/gems/rubocop-sorbet@0.8.1.rbi index 3888c041e..6f4cc551f 100644 --- a/sorbet/rbi/gems/rubocop-sorbet@0.8.0.rbi +++ b/sorbet/rbi/gems/rubocop-sorbet@0.8.1.rbi @@ -190,16 +190,30 @@ RuboCop::Cop::Sorbet::BuggyObsoleteStrictMemoization::MSG = T.let(T.unsafe(nil), # end # # source://rubocop-sorbet//lib/rubocop/cop/sorbet/callback_conditionals_binding.rb#35 -class RuboCop::Cop::Sorbet::CallbackConditionalsBinding < ::RuboCop::Cop::Cop - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/callback_conditionals_binding.rb#75 - def autocorrect(node); end +class RuboCop::Cop::Sorbet::CallbackConditionalsBinding < ::RuboCop::Cop::Base + include ::RuboCop::Cop::Alignment + extend ::RuboCop::Cop::AutoCorrector + + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/callback_conditionals_binding.rb#81 + def argumentless_unbound_callable_callback_conditional?(param0 = T.unsafe(nil)); end - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/callback_conditionals_binding.rb#127 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/callback_conditionals_binding.rb#91 def on_send(node); end + + private + + # Find the immediately enclosing class or module name. + # Returns `nil`` if the immediate parent (skipping begin if present) is not a class or module. + # + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/callback_conditionals_binding.rb#128 + def immediately_enclosing_module_name(node); end end -# source://rubocop-sorbet//lib/rubocop/cop/sorbet/callback_conditionals_binding.rb#36 -RuboCop::Cop::Sorbet::CallbackConditionalsBinding::CALLBACKS = T.let(T.unsafe(nil), Array) +# source://rubocop-sorbet//lib/rubocop/cop/sorbet/callback_conditionals_binding.rb#39 +RuboCop::Cop::Sorbet::CallbackConditionalsBinding::MSG = T.let(T.unsafe(nil), String) + +# source://rubocop-sorbet//lib/rubocop/cop/sorbet/callback_conditionals_binding.rb#41 +RuboCop::Cop::Sorbet::CallbackConditionalsBinding::RESTRICT_ON_SEND = T.let(T.unsafe(nil), Array) # Disallows the usage of `checked(true)`. This usage could cause # confusion; it could lead some people to believe that a method would be checked @@ -259,15 +273,18 @@ RuboCop::Cop::Sorbet::CheckedTrueInSignature::MESSAGE = T.let(T.unsafe(nil), Str # # good # { "User" => User }.fetch(class_name) # -# source://rubocop-sorbet//lib/rubocop/cop/sorbet/constants_from_strings.rb#37 -class RuboCop::Cop::Sorbet::ConstantsFromStrings < ::RuboCop::Cop::Cop - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/constants_from_strings.rb#38 - def constant_from_string?(param0 = T.unsafe(nil)); end - - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/constants_from_strings.rb#42 +# source://rubocop-sorbet//lib/rubocop/cop/sorbet/constants_from_strings.rb#36 +class RuboCop::Cop::Sorbet::ConstantsFromStrings < ::RuboCop::Cop::Base + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/constants_from_strings.rb#46 def on_send(node); end end +# source://rubocop-sorbet//lib/rubocop/cop/sorbet/constants_from_strings.rb#37 +RuboCop::Cop::Sorbet::ConstantsFromStrings::MSG = T.let(T.unsafe(nil), String) + +# source://rubocop-sorbet//lib/rubocop/cop/sorbet/constants_from_strings.rb#40 +RuboCop::Cop::Sorbet::ConstantsFromStrings::RESTRICT_ON_SEND = T.let(T.unsafe(nil), Array) + # Checks for blank lines after signatures. # # @example @@ -1392,7 +1409,7 @@ RuboCop::Cop::Sorbet::TypeAliasName::MSG = T.let(T.unsafe(nil), String) # # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#20 class RuboCop::Cop::Sorbet::ValidSigil < ::RuboCop::Cop::Cop - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#35 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#36 def autocorrect(_node); end # So we can properly subclass this cop @@ -1404,56 +1421,56 @@ class RuboCop::Cop::Sorbet::ValidSigil < ::RuboCop::Cop::Cop # checks # - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#70 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#71 def check_sigil_present(sigil); end - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#130 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#131 def check_strictness_level(sigil, strictness); end - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#108 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#109 def check_strictness_not_empty(sigil, strictness); end - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#119 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#120 def check_strictness_valid(sigil, strictness); end # Default is `nil` # - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#180 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#181 def exact_strictness; end # extraction # - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#58 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#59 def extract_sigil(processed_source); end - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#64 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#65 def extract_strictness(sigil); end # Default is `nil` # - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#174 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#175 def minimum_strictness; end # Default is `false` # # @return [Boolean] # - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#163 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#164 def require_sigil_on_all_files?; end # Default is `'false'` # - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#168 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#169 def suggested_strictness; end - # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#86 + # source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#87 def suggested_strictness_level; end end -# source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#54 +# source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#55 RuboCop::Cop::Sorbet::ValidSigil::SIGIL_REGEX = T.let(T.unsafe(nil), Regexp) -# source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#53 +# source://rubocop-sorbet//lib/rubocop/cop/sorbet/sigils/valid_sigil.rb#54 RuboCop::Cop::Sorbet::ValidSigil::STRICTNESS_LEVELS = T.let(T.unsafe(nil), Array) # Disallows the usage of `.void.checked(:tests)`. diff --git a/sorbet/rbi/gems/rubocop@1.62.1.rbi b/sorbet/rbi/gems/rubocop@1.63.2.rbi similarity index 98% rename from sorbet/rbi/gems/rubocop@1.62.1.rbi rename to sorbet/rbi/gems/rubocop@1.63.2.rbi index e1758a6ac..b31bf2d31 100644 --- a/sorbet/rbi/gems/rubocop@1.62.1.rbi +++ b/sorbet/rbi/gems/rubocop@1.63.2.rbi @@ -999,7 +999,9 @@ class RuboCop::Config # source://rubocop//lib/rubocop/config.rb#237 def base_dir_for_path_parameters; end - # source://rubocop//lib/rubocop/config.rb#266 + # @return [String, nil] + # + # source://rubocop//lib/rubocop/config.rb#267 def bundler_lock_file_path; end # source://rubocop//lib/rubocop/config.rb#51 @@ -1075,7 +1077,12 @@ class RuboCop::Config # source://rubocop//lib/rubocop/config.rb#153 def for_department(department_name); end - # source://rubocop//lib/rubocop/config.rb#289 + # Returns target's locked gem versions (i.e. from Gemfile.lock or gems.locked) + # + # source://rubocop//lib/rubocop/config.rb#292 + def gem_versions_in_target; end + + # source://rubocop//lib/rubocop/config.rb#296 def inspect; end # True if this is a config file that is shipped with RuboCop @@ -1120,7 +1127,7 @@ class RuboCop::Config # source://rubocop//lib/rubocop/config.rb#220 def patterns_to_include; end - # source://rubocop//lib/rubocop/config.rb#277 + # source://rubocop//lib/rubocop/config.rb#278 def pending_cops; end # Returns true if there's a chance that an Include pattern matches hidden @@ -1166,18 +1173,31 @@ class RuboCop::Config private - # source://rubocop//lib/rubocop/config.rb#324 + # source://rubocop//lib/rubocop/config.rb#347 def department_of(qualified_cop_name); end # @return [Boolean] # - # source://rubocop//lib/rubocop/config.rb#312 + # source://rubocop//lib/rubocop/config.rb#335 def enable_cop?(qualified_cop_name, cop_options); end - # source://rubocop//lib/rubocop/config.rb#299 + # @param gem_version [Gem::Version] an object like `Gem::Version.new("7.1.2.3")` + # @return [Float] The major and minor version, like `7.1` + # + # source://rubocop//lib/rubocop/config.rb#321 + def gem_version_to_major_minor_float(gem_version); end + + # source://rubocop//lib/rubocop/config.rb#328 + def read_gem_versions_from_target_lockfile; end + + # @return [Float, nil] The Rails version as a `major.minor` Float. + # + # source://rubocop//lib/rubocop/config.rb#308 def read_rails_version_from_bundler_lock_file; end - # source://rubocop//lib/rubocop/config.rb#295 + # @return [Float, nil] The Rails version as a `major.minor` Float. + # + # source://rubocop//lib/rubocop/config.rb#303 def target_rails_version_from_bundler_lock_file; end class << self @@ -2913,18 +2933,18 @@ class RuboCop::Cop::Base # @return [Base] a new instance of Base # - # source://rubocop//lib/rubocop/cop/base.rb#129 + # source://rubocop//lib/rubocop/cop/base.rb#153 def initialize(config = T.unsafe(nil), options = T.unsafe(nil)); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#243 + # source://rubocop//lib/rubocop/cop/base.rb#269 def active_support_extensions_enabled?; end # Adds an offense that has no particular location. # No correction can be applied to global offenses # - # source://rubocop//lib/rubocop/cop/base.rb#162 + # source://rubocop//lib/rubocop/cop/base.rb#186 def add_global_offense(message = T.unsafe(nil), severity: T.unsafe(nil)); end # Adds an offense on the specified range (or node with an expression) @@ -2932,25 +2952,25 @@ class RuboCop::Cop::Base # to provide the cop the opportunity to autocorrect the offense. # If message is not specified, the method `message` will be called. # - # source://rubocop//lib/rubocop/cop/base.rb#172 + # source://rubocop//lib/rubocop/cop/base.rb#198 def add_offense(node_or_range, message: T.unsafe(nil), severity: T.unsafe(nil), &block); end # @api private # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#313 + # source://rubocop//lib/rubocop/cop/base.rb#340 def always_autocorrect?; end # Called before any investigation # # @api private # - # source://rubocop//lib/rubocop/cop/base.rb#299 + # source://rubocop//lib/rubocop/cop/base.rb#326 def begin_investigation(processed_source, offset: T.unsafe(nil), original: T.unsafe(nil)); end # @api private # - # source://rubocop//lib/rubocop/cop/base.rb#284 + # source://rubocop//lib/rubocop/cop/base.rb#311 def callbacks_needed; end # Returns the value of attribute config. @@ -2958,29 +2978,29 @@ class RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/base.rb#43 def config; end - # source://rubocop//lib/rubocop/cop/base.rb#223 + # source://rubocop//lib/rubocop/cop/base.rb#249 def config_to_allow_offenses; end - # source://rubocop//lib/rubocop/cop/base.rb#227 + # source://rubocop//lib/rubocop/cop/base.rb#253 def config_to_allow_offenses=(hash); end # @api private # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#319 + # source://rubocop//lib/rubocop/cop/base.rb#346 def contextual_autocorrect?; end # Configuration Helpers # - # source://rubocop//lib/rubocop/cop/base.rb#217 + # source://rubocop//lib/rubocop/cop/base.rb#243 def cop_config; end - # source://rubocop//lib/rubocop/cop/base.rb#209 + # source://rubocop//lib/rubocop/cop/base.rb#235 def cop_name; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#255 + # source://rubocop//lib/rubocop/cop/base.rb#282 def excluded_file?(file); end # This method should be overridden when a cop's behavior depends @@ -2999,51 +3019,51 @@ class RuboCop::Cop::Base # ResultCache system when those external dependencies change, # ie when the ResultCache should be invalidated. # - # source://rubocop//lib/rubocop/cop/base.rb#205 + # source://rubocop//lib/rubocop/cop/base.rb#231 def external_dependency_checksum; end - # source://rubocop//lib/rubocop/cop/base.rb#323 + # source://rubocop//lib/rubocop/cop/base.rb#350 def inspect; end # Gets called if no message is specified when calling `add_offense` or # `add_global_offense` # Cops are discouraged to override this; instead pass your message directly # - # source://rubocop//lib/rubocop/cop/base.rb#156 + # source://rubocop//lib/rubocop/cop/base.rb#180 def message(_range = T.unsafe(nil)); end - # source://rubocop//lib/rubocop/cop/base.rb#209 + # source://rubocop//lib/rubocop/cop/base.rb#235 def name; end # @deprecated Make potential errors with previous API more obvious # - # source://rubocop//lib/rubocop/cop/base.rb#275 + # source://rubocop//lib/rubocop/cop/base.rb#302 def offenses; end # Called after all on_... have been called # When refining this method, always call `super` # - # source://rubocop//lib/rubocop/cop/base.rb#143 + # source://rubocop//lib/rubocop/cop/base.rb#167 def on_investigation_end; end # Called before all on_... have been called # When refining this method, always call `super` # - # source://rubocop//lib/rubocop/cop/base.rb#137 + # source://rubocop//lib/rubocop/cop/base.rb#161 def on_new_investigation; end # Called instead of all on_... callbacks for unrecognized files / syntax errors # When refining this method, always call `super` # - # source://rubocop//lib/rubocop/cop/base.rb#149 + # source://rubocop//lib/rubocop/cop/base.rb#173 def on_other_file; end # There should be very limited reasons for a Cop to do it's own parsing # - # source://rubocop//lib/rubocop/cop/base.rb#260 + # source://rubocop//lib/rubocop/cop/base.rb#287 def parse(source, path = T.unsafe(nil)); end - # source://rubocop//lib/rubocop/cop/base.rb#235 + # source://rubocop//lib/rubocop/cop/base.rb#261 def parser_engine; end # Returns the value of attribute processed_source. @@ -3055,99 +3075,104 @@ class RuboCop::Cop::Base # # @api private # - # source://rubocop//lib/rubocop/cop/base.rb#266 + # source://rubocop//lib/rubocop/cop/base.rb#293 def ready; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#247 + # source://rubocop//lib/rubocop/cop/base.rb#273 def relevant_file?(file); end - # source://rubocop//lib/rubocop/cop/base.rb#239 + # source://rubocop//lib/rubocop/cop/base.rb#265 def target_rails_version; end - # source://rubocop//lib/rubocop/cop/base.rb#231 + # source://rubocop//lib/rubocop/cop/base.rb#257 def target_ruby_version; end private - # source://rubocop//lib/rubocop/cop/base.rb#451 + # source://rubocop//lib/rubocop/cop/base.rb#478 def annotate(message); end - # source://rubocop//lib/rubocop/cop/base.rb#335 + # source://rubocop//lib/rubocop/cop/base.rb#362 def apply_correction(corrector); end # @return [Symbol] offense status # - # source://rubocop//lib/rubocop/cop/base.rb#415 + # source://rubocop//lib/rubocop/cop/base.rb#442 def attempt_correction(range, corrector); end # Reserved for Cop::Cop # - # source://rubocop//lib/rubocop/cop/base.rb#331 + # source://rubocop//lib/rubocop/cop/base.rb#358 def callback_argument(range); end # Called to complete an investigation # - # source://rubocop//lib/rubocop/cop/base.rb#364 + # source://rubocop//lib/rubocop/cop/base.rb#391 def complete_investigation; end # @return [Symbol, Corrector] offense status # - # source://rubocop//lib/rubocop/cop/base.rb#389 + # source://rubocop//lib/rubocop/cop/base.rb#416 def correct(range); end - # source://rubocop//lib/rubocop/cop/base.rb#349 + # source://rubocop//lib/rubocop/cop/base.rb#376 def current_corrector; end # Reserved for Commissioner: # - # source://rubocop//lib/rubocop/cop/base.rb#341 + # source://rubocop//lib/rubocop/cop/base.rb#368 def current_offense_locations; end - # source://rubocop//lib/rubocop/cop/base.rb#353 + # source://rubocop//lib/rubocop/cop/base.rb#380 def current_offenses; end - # source://rubocop//lib/rubocop/cop/base.rb#345 + # source://rubocop//lib/rubocop/cop/base.rb#372 def currently_disabled_lines; end - # source://rubocop//lib/rubocop/cop/base.rb#479 + # source://rubocop//lib/rubocop/cop/base.rb#506 def custom_severity; end - # source://rubocop//lib/rubocop/cop/base.rb#475 + # source://rubocop//lib/rubocop/cop/base.rb#502 def default_severity; end - # source://rubocop//lib/rubocop/cop/base.rb#429 + # source://rubocop//lib/rubocop/cop/base.rb#456 def disable_uncorrectable(range); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#465 + # source://rubocop//lib/rubocop/cop/base.rb#492 def enabled_line?(line_number); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#457 + # source://rubocop//lib/rubocop/cop/base.rb#484 def file_name_matches_any?(file, parameter, default_result); end - # source://rubocop//lib/rubocop/cop/base.rb#447 + # source://rubocop//lib/rubocop/cop/base.rb#474 def find_message(range, message); end - # source://rubocop//lib/rubocop/cop/base.rb#471 + # source://rubocop//lib/rubocop/cop/base.rb#498 def find_severity(_range, severity); end - # source://rubocop//lib/rubocop/cop/base.rb#492 + # source://rubocop//lib/rubocop/cop/base.rb#519 def range_for_original(range); end - # source://rubocop//lib/rubocop/cop/base.rb#436 + # source://rubocop//lib/rubocop/cop/base.rb#463 def range_from_node_or_range(node_or_range); end - # source://rubocop//lib/rubocop/cop/base.rb#384 + # source://rubocop//lib/rubocop/cop/base.rb#411 def reset_investigation; end + # @return [Boolean] + # + # source://rubocop//lib/rubocop/cop/base.rb#527 + def target_satisfies_all_gem_version_requirements?; end + # @return [Symbol] offense status # - # source://rubocop//lib/rubocop/cop/base.rb#404 + # source://rubocop//lib/rubocop/cop/base.rb#431 def use_corrector(range, corrector); end class << self @@ -3162,18 +3187,18 @@ class RuboCop::Cop::Base # Naming # - # source://rubocop//lib/rubocop/cop/base.rb#89 + # source://rubocop//lib/rubocop/cop/base.rb#90 def badge; end # @api private # - # source://rubocop//lib/rubocop/cop/base.rb#289 + # source://rubocop//lib/rubocop/cop/base.rb#316 def callbacks_needed; end - # source://rubocop//lib/rubocop/cop/base.rb#93 + # source://rubocop//lib/rubocop/cop/base.rb#94 def cop_name; end - # source://rubocop//lib/rubocop/cop/base.rb#97 + # source://rubocop//lib/rubocop/cop/base.rb#98 def department; end # Cops (other than builtin) are encouraged to implement this @@ -3186,9 +3211,14 @@ class RuboCop::Cop::Base # Call for abstract Cop classes # - # source://rubocop//lib/rubocop/cop/base.rb#77 + # source://rubocop//lib/rubocop/cop/base.rb#78 def exclude_from_registry; end + # Returns the value of attribute gem_requirements. + # + # source://rubocop//lib/rubocop/cop/base.rb#135 + def gem_requirements; end + # @private # # source://rubocop//lib/rubocop/cop/base.rb#71 @@ -3196,12 +3226,12 @@ class RuboCop::Cop::Base # Override and return the Force class(es) you need to join # - # source://rubocop//lib/rubocop/cop/base.rb#114 + # source://rubocop//lib/rubocop/cop/base.rb#115 def joining_forces; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#101 + # source://rubocop//lib/rubocop/cop/base.rb#102 def lint?; end # Returns true if the cop name or the cop namespace matches any of the @@ -3209,15 +3239,30 @@ class RuboCop::Cop::Base # # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#107 + # source://rubocop//lib/rubocop/cop/base.rb#108 def match?(given_names); end + # Register a version requirement for the given gem name. + # This cop will be skipped unless the target satisfies *all* requirements. + # + # @api public + # @param gem_name [String] + # @param version_requirements [Array] The version requirements, + # using the same syntax as a Gemfile, e.g. ">= 1.2.3" + # + # If omitted, any version of the gem will be accepted. + # + # https://guides.rubygems.org/patterns/#declaring-dependencies + # + # source://rubocop//lib/rubocop/cop/base.rb#148 + def requires_gem(gem_name, *version_requirements); end + # Returns if class supports autocorrect. # It is recommended to extend AutoCorrector instead of overriding # # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#83 + # source://rubocop//lib/rubocop/cop/base.rb#84 def support_autocorrect?; end # Override if your cop should be called repeatedly for multiple investigations @@ -3230,22 +3275,22 @@ class RuboCop::Cop::Base # # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#125 + # source://rubocop//lib/rubocop/cop/base.rb#126 def support_multiple_source?; end private # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/base.rb#375 + # source://rubocop//lib/rubocop/cop/base.rb#402 def builtin?; end - # source://rubocop//lib/rubocop/cop/base.rb#357 + # source://rubocop//lib/rubocop/cop/base.rb#384 def restrict_on_send; end end end -# source://rubocop//lib/rubocop/cop/base.rb#361 +# source://rubocop//lib/rubocop/cop/base.rb#388 RuboCop::Cop::Base::EMPTY_OFFENSES = T.let(T.unsafe(nil), Array) # Reports of an investigation. @@ -4134,6 +4179,9 @@ module RuboCop::Cop::CodeLength # source://rubocop//lib/rubocop/cop/mixin/code_length.rb#45 def irrelevant_line(source_line); end + # source://rubocop//lib/rubocop/cop/mixin/code_length.rb#58 + def location(node); end + # source://rubocop//lib/rubocop/cop/mixin/code_length.rb#19 def max_length; end @@ -17383,6 +17431,11 @@ RuboCop::Cop::Lint::ConstantResolution::MSG = T.let(T.unsafe(nil), String) # MyDebugger.debug_this # ---- # +# Some gems also ship files that will start a debugging session when required, +# for example `require 'debug/start'` from `ruby/debug`. These requires can +# be configured through `DebuggerRequires`. It has the same structure as +# `DebuggerMethods`, which you can read about above. +# # @example # # # bad (ok during development) @@ -17415,43 +17468,56 @@ RuboCop::Cop::Lint::ConstantResolution::MSG = T.let(T.unsafe(nil), String) # def some_method # my_debugger # end +# @example DebuggerRequires: [my_debugger/start] +# +# # bad (ok during development) # -# source://rubocop//lib/rubocop/cop/lint/debugger.rb#67 +# require 'my_debugger/start' +# +# source://rubocop//lib/rubocop/cop/lint/debugger.rb#78 class RuboCop::Cop::Lint::Debugger < ::RuboCop::Cop::Base - # source://rubocop//lib/rubocop/cop/lint/debugger.rb#71 + # source://rubocop//lib/rubocop/cop/lint/debugger.rb#82 def on_send(node); end private # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/lint/debugger.rb#117 + # source://rubocop//lib/rubocop/cop/lint/debugger.rb#142 def assumed_argument?(node); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/lint/debugger.rb#96 + # source://rubocop//lib/rubocop/cop/lint/debugger.rb#121 def assumed_usage_context?(node); end - # source://rubocop//lib/rubocop/cop/lint/debugger.rb#106 + # source://rubocop//lib/rubocop/cop/lint/debugger.rb#131 def chained_method_name(send_node); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/lint/debugger.rb#90 + # source://rubocop//lib/rubocop/cop/lint/debugger.rb#108 def debugger_method?(send_node); end - # source://rubocop//lib/rubocop/cop/lint/debugger.rb#83 + # source://rubocop//lib/rubocop/cop/lint/debugger.rb#94 def debugger_methods; end - # source://rubocop//lib/rubocop/cop/lint/debugger.rb#79 + # @return [Boolean] + # + # source://rubocop//lib/rubocop/cop/lint/debugger.rb#114 + def debugger_require?(send_node); end + + # source://rubocop//lib/rubocop/cop/lint/debugger.rb#101 + def debugger_requires; end + + # source://rubocop//lib/rubocop/cop/lint/debugger.rb#90 def message(node); end end -# source://rubocop//lib/rubocop/cop/lint/debugger.rb#69 +# source://rubocop//lib/rubocop/cop/lint/debugger.rb#80 RuboCop::Cop::Lint::Debugger::BLOCK_TYPES = T.let(T.unsafe(nil), Array) -# source://rubocop//lib/rubocop/cop/lint/debugger.rb#68 +# source://rubocop//lib/rubocop/cop/lint/debugger.rb#79 RuboCop::Cop::Lint::Debugger::MSG = T.let(T.unsafe(nil), String) # Checks for uses of the deprecated class method usages. @@ -20466,7 +20532,7 @@ class RuboCop::Cop::Lint::MixedCaseRange < ::RuboCop::Cop::Base include ::RuboCop::Cop::RangeHelp extend ::RuboCop::Cop::AutoCorrector - # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#56 + # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#58 def each_unsafe_regexp_range(node); end # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#37 @@ -20480,31 +20546,31 @@ class RuboCop::Cop::Lint::MixedCaseRange < ::RuboCop::Cop::Base private - # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#72 + # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#74 def build_source_range(range_start, range_end); end - # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#76 + # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#78 def range_for(char); end - # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#82 + # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#84 def range_pairs(expr); end - # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#102 - def rewrite_regexp_range(source); end + # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#104 + def regexp_range(source); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#92 + # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#94 def skip_expression?(expr); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#96 + # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#98 def skip_range?(range_start, range_end); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#86 + # source://rubocop//lib/rubocop/cop/lint/mixed_case_range.rb#88 def unsafe_range?(range_start, range_end); end end @@ -22481,21 +22547,21 @@ class RuboCop::Cop::Lint::RedundantWithIndex < ::RuboCop::Cop::Base include ::RuboCop::Cop::RangeHelp extend ::RuboCop::Cop::AutoCorrector - # source://rubocop//lib/rubocop/cop/lint/redundant_with_index.rb#36 + # source://rubocop//lib/rubocop/cop/lint/redundant_with_index.rb#37 def on_block(node); end - # source://rubocop//lib/rubocop/cop/lint/redundant_with_index.rb#36 + # source://rubocop//lib/rubocop/cop/lint/redundant_with_index.rb#37 def on_numblock(node); end - # source://rubocop//lib/rubocop/cop/lint/redundant_with_index.rb#57 + # source://rubocop//lib/rubocop/cop/lint/redundant_with_index.rb#60 def redundant_with_index?(param0 = T.unsafe(nil)); end private - # source://rubocop//lib/rubocop/cop/lint/redundant_with_index.rb#67 + # source://rubocop//lib/rubocop/cop/lint/redundant_with_index.rb#70 def message(node); end - # source://rubocop//lib/rubocop/cop/lint/redundant_with_index.rb#75 + # source://rubocop//lib/rubocop/cop/lint/redundant_with_index.rb#78 def with_index_range(send); end end @@ -24514,7 +24580,7 @@ class RuboCop::Cop::Lint::UnreachableLoop < ::RuboCop::Cop::Base # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/lint/unreachable_loop.rb#194 + # source://rubocop//lib/rubocop/cop/lint/unreachable_loop.rb#200 def conditional_continue_keyword?(break_statement); end # @return [Boolean] @@ -24524,7 +24590,7 @@ class RuboCop::Cop::Lint::UnreachableLoop < ::RuboCop::Cop::Base # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/lint/unreachable_loop.rb#184 + # source://rubocop//lib/rubocop/cop/lint/unreachable_loop.rb#190 def preceded_by_continue_statement?(break_statement); end # source://rubocop//lib/rubocop/cop/lint/unreachable_loop.rb#130 @@ -25887,6 +25953,11 @@ module RuboCop::Cop::MethodComplexity # # source://rubocop//lib/rubocop/cop/mixin/method_complexity.rb#61 def complexity(body); end + + # @api private + # + # source://rubocop//lib/rubocop/cop/mixin/method_complexity.rb#73 + def location(node); end end # Common code for cops that deal with preferred methods. @@ -27505,43 +27576,66 @@ class RuboCop::Cop::Naming::BlockForwarding < ::RuboCop::Cop::Base extend ::RuboCop::Cop::AutoCorrector extend ::RuboCop::Cop::TargetRubyVersion - # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#55 + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#54 def on_def(node); end - # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#55 + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#54 def on_defs(node); end private # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#95 + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#114 def anonymous_block_argument?(node); end - # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#127 + # @return [Boolean] + # + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#87 + def block_argument_name_matched?(block_pass_node, last_argument); end + + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#146 def block_forwarding_name; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#81 + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#77 def expected_block_forwarding_style?(node, last_argument); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#99 + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#118 def explicit_block_argument?(node); end - # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#103 + # Prevents the following syntax error: + # + # # foo.rb + # def foo(&) + # block_method do + # bar(&) + # end + # end + # + # $ ruby -vc foo.rb + # ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [x86_64-darwin22] + # foo.rb: foo.rb:4: anonymous block parameter is also used within block (SyntaxError) + # + # @return [Boolean] + # + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#106 + def invalidates_syntax?(block_pass_node); end + + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#122 def register_offense(block_argument, node); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#119 + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#138 def use_block_argument_as_local_variable?(node, last_argument); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#91 + # source://rubocop//lib/rubocop/cop/naming/block_forwarding.rb#110 def use_kwarg_in_method_definition?(node); end class << self @@ -27767,8 +27861,6 @@ class RuboCop::Cop::Naming::FileName < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/naming/file_name.rb#165 def find_definition(node); end - # @yield [source_range(processed_source.buffer, 1, 0), msg] - # # source://rubocop//lib/rubocop/cop/naming/file_name.rb#65 def for_bad_filename(file_path); end @@ -28020,13 +28112,13 @@ class RuboCop::Cop::Naming::InclusiveLanguage < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#126 def check_token?(type); end - # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#244 + # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#243 def create_message(word, message = T.unsafe(nil)); end - # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#218 + # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#217 def create_multiple_word_message_for_file(words); end - # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#214 + # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#213 def create_single_word_message_for_file(word); end # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#189 @@ -28035,10 +28127,10 @@ class RuboCop::Cop::Naming::InclusiveLanguage < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#160 def extract_regexp(term, term_definition); end - # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#252 + # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#251 def find_flagged_term(word); end - # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#266 + # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#265 def format_suggestions(suggestions); end # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#197 @@ -28047,10 +28139,10 @@ class RuboCop::Cop::Naming::InclusiveLanguage < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#100 def investigate_tokens; end - # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#232 + # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#231 def mask_input(str); end - # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#281 + # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#280 def offense_range(token, word); end # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#130 @@ -28059,13 +28151,13 @@ class RuboCop::Cop::Naming::InclusiveLanguage < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#144 def preprocess_flagged_terms; end - # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#259 + # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#258 def preprocess_suggestions(suggestions); end # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#179 def process_allowed_regex(allowed); end - # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#222 + # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#221 def scan_for_words(input); end # source://rubocop//lib/rubocop/cop/naming/inclusive_language.rb#174 @@ -30812,7 +30904,7 @@ class RuboCop::Cop::Style::Alias < ::RuboCop::Cop::Base include ::RuboCop::Cop::ConfigurableEnforcedStyle extend ::RuboCop::Cop::AutoCorrector - # source://rubocop//lib/rubocop/cop/style/alias.rb#51 + # source://rubocop//lib/rubocop/cop/style/alias.rb#52 def on_alias(node); end # source://rubocop//lib/rubocop/cop/style/alias.rb#41 @@ -30820,47 +30912,47 @@ class RuboCop::Cop::Style::Alias < ::RuboCop::Cop::Base private - # source://rubocop//lib/rubocop/cop/style/alias.rb#85 + # source://rubocop//lib/rubocop/cop/style/alias.rb#86 def add_offense_for_args(node, &block); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/alias.rb#75 + # source://rubocop//lib/rubocop/cop/style/alias.rb#76 def alias_keyword_possible?(node); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/alias.rb#79 + # source://rubocop//lib/rubocop/cop/style/alias.rb#80 def alias_method_possible?(node); end - # source://rubocop//lib/rubocop/cop/style/alias.rb#65 + # source://rubocop//lib/rubocop/cop/style/alias.rb#66 def autocorrect(corrector, node); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/alias.rb#124 + # source://rubocop//lib/rubocop/cop/style/alias.rb#125 def bareword?(sym_node); end - # source://rubocop//lib/rubocop/cop/style/alias.rb#128 + # source://rubocop//lib/rubocop/cop/style/alias.rb#129 def correct_alias_method_to_alias(corrector, send_node); end - # source://rubocop//lib/rubocop/cop/style/alias.rb#135 + # source://rubocop//lib/rubocop/cop/style/alias.rb#136 def correct_alias_to_alias_method(corrector, node); end - # source://rubocop//lib/rubocop/cop/style/alias.rb#142 + # source://rubocop//lib/rubocop/cop/style/alias.rb#143 def correct_alias_with_symbol_args(corrector, node); end - # source://rubocop//lib/rubocop/cop/style/alias.rb#147 + # source://rubocop//lib/rubocop/cop/style/alias.rb#148 def identifier(node); end - # source://rubocop//lib/rubocop/cop/style/alias.rb#113 + # source://rubocop//lib/rubocop/cop/style/alias.rb#114 def lexical_scope_type(node); end # In this expression, will `self` be the same as the innermost enclosing # class or module block (:lexical)? Or will it be something else # (:dynamic)? If we're in an instance_eval block, return that. # - # source://rubocop//lib/rubocop/cop/style/alias.rb#96 + # source://rubocop//lib/rubocop/cop/style/alias.rb#97 def scope_type(node); end end @@ -31109,7 +31201,7 @@ class RuboCop::Cop::Style::ArgumentsForwarding < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#185 def add_forward_all_offenses(node, send_classifications, forwardable_args); end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#350 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#351 def add_parens_if_missing(node, corrector); end # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#212 @@ -31117,10 +31209,10 @@ class RuboCop::Cop::Style::ArgumentsForwarding < ::RuboCop::Cop::Base # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#342 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#343 def allow_only_rest_arguments?; end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#334 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#335 def arguments_range(node, first_node); end # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#263 @@ -31131,7 +31223,7 @@ class RuboCop::Cop::Style::ArgumentsForwarding < ::RuboCop::Cop::Base # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#494 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#495 def explicit_block_name?; end # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#168 @@ -31156,7 +31248,7 @@ class RuboCop::Cop::Style::ArgumentsForwarding < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#282 def redundant_named_arg(arg, config_name, keyword); end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#324 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#325 def register_forward_all_offense(def_or_send, send_or_arguments, rest_or_splat); end # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#298 @@ -31170,7 +31262,7 @@ class RuboCop::Cop::Style::ArgumentsForwarding < ::RuboCop::Cop::Base # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#346 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#347 def use_anonymous_forwarding?; end class << self @@ -31199,115 +31291,115 @@ RuboCop::Cop::Style::ArgumentsForwarding::KWARGS_MSG = T.let(T.unsafe(nil), Stri # Classifies send nodes for possible rest/kwrest/all (including block) forwarding. # -# source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#357 +# source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#358 class RuboCop::Cop::Style::ArgumentsForwarding::SendNodeClassifier extend ::RuboCop::AST::NodePattern::Macros # @return [SendNodeClassifier] a new instance of SendNodeClassifier # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#369 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#370 def initialize(def_node, send_node, referenced_lvars, forwardable_args, **config); end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#397 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#398 def classification; end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#364 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#365 def extract_forwarded_kwrest_arg(param0 = T.unsafe(nil), param1); end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#391 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#392 def forwarded_block_arg; end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#367 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#368 def forwarded_block_arg?(param0 = T.unsafe(nil), param1); end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#385 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#386 def forwarded_kwrest_arg; end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#379 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#380 def forwarded_rest_arg; end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#361 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#362 def forwarded_rest_arg?(param0 = T.unsafe(nil), param1); end private # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#465 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#466 def additional_kwargs?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#461 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#462 def additional_kwargs_or_forwarded_kwargs?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#475 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#476 def allow_offense_for_no_block?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#446 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#447 def any_arg_referenced?; end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#430 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#431 def arguments; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#409 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#410 def can_forward_all?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#469 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#470 def forward_additional_kwargs?; end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#426 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#427 def forwarded_rest_and_kwrest_args; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#488 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#489 def missing_rest_arg_or_kwrest_arg?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#479 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#480 def no_additional_args?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#454 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#455 def no_post_splat_args?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#422 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#423 def offensive_block_forwarding?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#442 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#443 def referenced_block_arg?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#438 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#439 def referenced_kwrest_arg?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#434 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#435 def referenced_rest_arg?; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#418 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#419 def ruby_32_missing_rest_or_kwest?; end - # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#450 + # source://rubocop//lib/rubocop/cop/style/arguments_forwarding.rb#451 def target_ruby_version; end end @@ -32905,9 +32997,7 @@ RuboCop::Cop::Style::ClassVars::RESTRICT_ON_SEND = T.let(T.unsafe(nil), Array) # @example # # bad # array.reject(&:nil?) -# array.delete_if(&:nil?) # array.reject { |e| e.nil? } -# array.delete_if { |e| e.nil? } # array.select { |e| !e.nil? } # array.grep_v(nil) # array.grep_v(NilClass) @@ -32917,7 +33007,9 @@ RuboCop::Cop::Style::ClassVars::RESTRICT_ON_SEND = T.let(T.unsafe(nil), Array) # # # bad # hash.reject!(&:nil?) +# array.delete_if(&:nil?) # hash.reject! { |k, v| v.nil? } +# array.delete_if { |e| e.nil? } # hash.select! { |k, v| !v.nil? } # # # good @@ -34075,36 +34167,36 @@ class RuboCop::Cop::Style::Copyright < ::RuboCop::Cop::Base private - # source://rubocop//lib/rubocop/cop/style/copyright.rb#47 + # source://rubocop//lib/rubocop/cop/style/copyright.rb#45 + def autocorrect(corrector); end + + # source://rubocop//lib/rubocop/cop/style/copyright.rb#56 def autocorrect_notice; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/copyright.rb#78 + # source://rubocop//lib/rubocop/cop/style/copyright.rb#83 def encoding_token?(processed_source, token_index); end - # source://rubocop//lib/rubocop/cop/style/copyright.rb#64 + # source://rubocop//lib/rubocop/cop/style/copyright.rb#69 def insert_notice_before(processed_source); end - # source://rubocop//lib/rubocop/cop/style/copyright.rb#43 + # source://rubocop//lib/rubocop/cop/style/copyright.rb#52 def notice; end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/copyright.rb#85 + # source://rubocop//lib/rubocop/cop/style/copyright.rb#90 def notice_found?(processed_source); end - # source://rubocop//lib/rubocop/cop/style/copyright.rb#51 - def offense_range; end - # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/copyright.rb#71 + # source://rubocop//lib/rubocop/cop/style/copyright.rb#76 def shebang_token?(processed_source, token_index); end # @raise [Warning] # - # source://rubocop//lib/rubocop/cop/style/copyright.rb#55 + # source://rubocop//lib/rubocop/cop/style/copyright.rb#60 def verify_autocorrect_notice!; end end @@ -35827,19 +35919,19 @@ class RuboCop::Cop::Style::EvalWithLocation < ::RuboCop::Cop::Base private - # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#184 + # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#186 def add_offense_for_different_line(node, line_node, line_diff); end # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#131 def add_offense_for_incorrect_line(method_name, line_node, sign, line_diff); end - # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#199 + # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#201 def add_offense_for_missing_line(node, code); end - # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#206 + # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#208 def add_offense_for_missing_location(node, code); end - # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#178 + # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#180 def add_offense_for_same_line(node, line_node); end # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#143 @@ -35851,16 +35943,16 @@ class RuboCop::Cop::Style::EvalWithLocation < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#95 def check_location(node, code); end - # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#191 + # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#193 def expected_line(sign, line_diff); end # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#122 def file_and_line(node); end - # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#166 + # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#168 def line_difference(line_node, code); end - # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#218 + # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#220 def missing_line(node, code); end # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#109 @@ -35876,7 +35968,7 @@ class RuboCop::Cop::Style::EvalWithLocation < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#118 def special_line_keyword?(node); end - # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#170 + # source://rubocop//lib/rubocop/cop/style/eval_with_location.rb#172 def string_first_line(str_node); end # @return [Boolean] @@ -35971,10 +36063,10 @@ class RuboCop::Cop::Style::ExactRegexpMatch < ::RuboCop::Cop::Base # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/exact_regexp_match.rb#56 + # source://rubocop//lib/rubocop/cop/style/exact_regexp_match.rb#57 def exact_match_pattern?(parsed_regexp); end - # source://rubocop//lib/rubocop/cop/style/exact_regexp_match.rb#63 + # source://rubocop//lib/rubocop/cop/style/exact_regexp_match.rb#64 def new_method(node); end end @@ -36736,25 +36828,25 @@ RuboCop::Cop::Style::For::PREFER_FOR = T.let(T.unsafe(nil), String) # # @example EnforcedStyle: format (default) # # bad -# puts sprintf('%10s', 'hoge') -# puts '%10s' % 'hoge' +# puts sprintf('%10s', 'foo') +# puts '%10s' % 'foo' # # # good -# puts format('%10s', 'hoge') +# puts format('%10s', 'foo') # @example EnforcedStyle: sprintf # # bad -# puts format('%10s', 'hoge') -# puts '%10s' % 'hoge' +# puts format('%10s', 'foo') +# puts '%10s' % 'foo' # # # good -# puts sprintf('%10s', 'hoge') +# puts sprintf('%10s', 'foo') # @example EnforcedStyle: percent # # bad -# puts format('%10s', 'hoge') -# puts sprintf('%10s', 'hoge') +# puts format('%10s', 'foo') +# puts sprintf('%10s', 'foo') # # # good -# puts '%10s' % 'hoge' +# puts '%10s' % 'foo' # # source://rubocop//lib/rubocop/cop/style/format_string.rb#50 class RuboCop::Cop::Style::FormatString < ::RuboCop::Cop::Base @@ -39700,6 +39792,109 @@ end # source://rubocop//lib/rubocop/cop/style/map_compact_with_conditional_block.rb#43 RuboCop::Cop::Style::MapCompactWithConditionalBlock::MSG = T.let(T.unsafe(nil), String) +# Checks for usages of `each` with `<<`, `push`, or `append` which +# can be replaced by `map`. +# +# If `PreferredMethods` is configured for `map` in `Style/CollectionMethods`, +# this cop uses the specified method for replacement. +# +# NOTE: The return value of `Enumerable#each` is `self`, whereas the +# return value of `Enumerable#map` is an `Array`. They are not autocorrected +# when a return value could be used because these types differ. +# +# NOTE: It only detects when the mapping destination is a local variable +# initialized as an empty array and referred to only by the pushing operation. +# This is because, if not, it's challenging to statically guarantee that the +# mapping destination variable remains an empty array: +# +# [source,ruby] +# ---- +# ret = [] +# src.each { |e| ret << e * 2 } # `<<` method may mutate `ret` +# +# dest = [] +# src.each { |e| dest << transform(e, dest) } # `transform` method may mutate `dest` +# ---- +# +# @example +# # bad +# dest = [] +# src.each { |e| dest << e * 2 } +# dest +# +# # good +# dest = src.map { |e| e * 2 } +# +# # good - contains another operation +# dest = [] +# src.each { |e| dest << e * 2; puts e } +# dest +# +# source://rubocop//lib/rubocop/cop/style/map_into_array.rb#50 +class RuboCop::Cop::Style::MapIntoArray < ::RuboCop::Cop::Base + include ::RuboCop::Cop::RangeHelp + extend ::RuboCop::Cop::AutoCorrector + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#75 + def after_leaving_scope(scope, _variable_table); end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#57 + def each_block_with_push?(param0 = T.unsafe(nil)); end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#66 + def empty_array_asgn?(param0 = T.unsafe(nil)); end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#69 + def lvar_ref?(param0 = T.unsafe(nil), param1); end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#79 + def on_block(node); end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#79 + def on_numblock(node); end + + private + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#155 + def correct_push_node(corrector, push_node); end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#163 + def correct_return_value_handling(corrector, block, dest_var); end + + # @return [Boolean] + # + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#108 + def dest_used_only_for_mapping?(block, dest_var, asgn); end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#102 + def find_closest_assignment(block, dest_var); end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#94 + def find_dest_var(block); end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#127 + def new_method_name; end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#116 + def register_offense(block, dest_var, asgn); end + + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#148 + def remove_assignment(corrector, asgn); end + + # @return [Boolean] + # + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#133 + def return_value_used?(node); end + + class << self + # source://rubocop//lib/rubocop/cop/style/map_into_array.rb#71 + def joining_forces; end + end +end + +# source://rubocop//lib/rubocop/cop/style/map_into_array.rb#54 +RuboCop::Cop::Style::MapIntoArray::MSG = T.let(T.unsafe(nil), String) + # Looks for uses of `map.to_h` or `collect.to_h` that could be # written with just `to_h` in Ruby >= 2.6. # @@ -41630,7 +41825,7 @@ class RuboCop::Cop::Style::MutableConstant < ::RuboCop::Cop::Base include ::RuboCop::Cop::ConfigurableEnforcedStyle extend ::RuboCop::Cop::AutoCorrector - # source://rubocop-sorbet/0.7.8/lib/rubocop/cop/sorbet/mutable_constant_sorbet_aware_behaviour.rb#18 + # source://rubocop-sorbet/0.8.1/lib/rubocop/cop/sorbet/mutable_constant_sorbet_aware_behaviour.rb#18 def on_assignment(value); end # source://rubocop//lib/rubocop/cop/style/mutable_constant.rb#127 @@ -41648,7 +41843,7 @@ class RuboCop::Cop::Style::MutableConstant < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/style/mutable_constant.rb#217 def splat_value(param0 = T.unsafe(nil)); end - # source://rubocop-sorbet/0.7.8/lib/rubocop/cop/sorbet/mutable_constant_sorbet_aware_behaviour.rb#12 + # source://rubocop-sorbet/0.8.1/lib/rubocop/cop/sorbet/mutable_constant_sorbet_aware_behaviour.rb#12 def t_let(param0 = T.unsafe(nil)); end private @@ -44313,10 +44508,20 @@ class RuboCop::Cop::Style::RedundantArgument < ::RuboCop::Cop::Base private - # source://rubocop//lib/rubocop/cop/style/redundant_argument.rb#94 + # @return [Boolean] + # + # source://rubocop//lib/rubocop/cop/style/redundant_argument.rb#108 + def argument_matched?(target_argument, redundant_argument); end + + # source://rubocop//lib/rubocop/cop/style/redundant_argument.rb#100 def argument_range(node); end - # source://rubocop//lib/rubocop/cop/style/redundant_argument.rb#87 + # @return [Boolean] + # + # source://rubocop//lib/rubocop/cop/style/redundant_argument.rb#120 + def exclude_cntrl_character?(target_argument, redundant_argument); end + + # source://rubocop//lib/rubocop/cop/style/redundant_argument.rb#93 def redundant_arg_for_method(method_name); end # @return [Boolean] @@ -44925,16 +45130,19 @@ class RuboCop::Cop::Style::RedundantCurrentDirectoryInPath < ::RuboCop::Cop::Bas include ::RuboCop::Cop::RangeHelp extend ::RuboCop::Cop::AutoCorrector - # source://rubocop//lib/rubocop/cop/style/redundant_current_directory_in_path.rb#23 + # source://rubocop//lib/rubocop/cop/style/redundant_current_directory_in_path.rb#24 def on_send(node); end end -# source://rubocop//lib/rubocop/cop/style/redundant_current_directory_in_path.rb#21 +# source://rubocop//lib/rubocop/cop/style/redundant_current_directory_in_path.rb#22 RuboCop::Cop::Style::RedundantCurrentDirectoryInPath::CURRENT_DIRECTORY_PATH = T.let(T.unsafe(nil), String) # source://rubocop//lib/rubocop/cop/style/redundant_current_directory_in_path.rb#20 RuboCop::Cop::Style::RedundantCurrentDirectoryInPath::MSG = T.let(T.unsafe(nil), String) +# source://rubocop//lib/rubocop/cop/style/redundant_current_directory_in_path.rb#21 +RuboCop::Cop::Style::RedundantCurrentDirectoryInPath::RESTRICT_ON_SEND = T.let(T.unsafe(nil), Array) + # Checks for redundant uses of double splat hash braces. # # @example @@ -45697,17 +45905,12 @@ class RuboCop::Cop::Style::RedundantLineContinuation < ::RuboCop::Cop::Base # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#168 - def allowed_type?(node); end - - # @return [Boolean] - # - # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#186 + # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#180 def argument_is_method?(node); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#146 + # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#144 def argument_newline?(node); end # @return [Boolean] @@ -45715,12 +45918,12 @@ class RuboCop::Cop::Style::RedundantLineContinuation < ::RuboCop::Cop::Base # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#101 def ends_with_backslash_without_comment?(source_line); end - # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#162 + # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#160 def find_node_for_line(line); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#133 + # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#131 def inside_string_literal?(range, token); end # @return [Boolean] @@ -45735,7 +45938,7 @@ class RuboCop::Cop::Style::RedundantLineContinuation < ::RuboCop::Cop::Base # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#193 + # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#187 def method_call_with_arguments?(node); end # A method call without parentheses such as the following cannot remove `\`: @@ -45745,7 +45948,7 @@ class RuboCop::Cop::Style::RedundantLineContinuation < ::RuboCop::Cop::Base # # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#141 + # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#139 def method_with_argument?(current_token, next_token); end # @return [Boolean] @@ -45760,12 +45963,12 @@ class RuboCop::Cop::Style::RedundantLineContinuation < ::RuboCop::Cop::Base # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#172 + # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#166 def same_line?(node, line); end # @return [Boolean] # - # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#197 + # source://rubocop//lib/rubocop/cop/style/redundant_line_continuation.rb#191 def start_with_arithmetic_operator?(source_line); end # @return [Boolean] @@ -51810,22 +52013,22 @@ class RuboCop::Cop::Team # source://rubocop//lib/rubocop/cop/team.rb#121 def autocorrect(processed_source, report, original:, offset:); end - # source://rubocop//lib/rubocop/cop/team.rb#182 + # source://rubocop//lib/rubocop/cop/team.rb#185 def autocorrect_report(report, offset:, original:); end # source://rubocop//lib/rubocop/cop/team.rb#140 def be_ready; end - # source://rubocop//lib/rubocop/cop/team.rb#188 + # source://rubocop//lib/rubocop/cop/team.rb#191 def collate_corrections(report, offset:, original:); end - # source://rubocop//lib/rubocop/cop/team.rb#204 + # source://rubocop//lib/rubocop/cop/team.rb#207 def each_corrector(report); end - # source://rubocop//lib/rubocop/cop/team.rb#254 + # source://rubocop//lib/rubocop/cop/team.rb#257 def handle_error(error, location, cop); end - # source://rubocop//lib/rubocop/cop/team.rb#246 + # source://rubocop//lib/rubocop/cop/team.rb#249 def handle_warning(error, location); end # @return [Commissioner::InvestigationReport] @@ -51833,7 +52036,7 @@ class RuboCop::Cop::Team # source://rubocop//lib/rubocop/cop/team.rb#154 def investigate_partial(cops, processed_source, offset:, original:); end - # source://rubocop//lib/rubocop/cop/team.rb#231 + # source://rubocop//lib/rubocop/cop/team.rb#234 def process_errors(file, errors); end # source://rubocop//lib/rubocop/cop/team.rb#148 @@ -51854,10 +52057,10 @@ class RuboCop::Cop::Team # source://rubocop//lib/rubocop/cop/team.rb#170 def support_target_ruby_version?(cop); end - # source://rubocop//lib/rubocop/cop/team.rb#219 + # source://rubocop//lib/rubocop/cop/team.rb#222 def suppress_clobbering; end - # source://rubocop//lib/rubocop/cop/team.rb#225 + # source://rubocop//lib/rubocop/cop/team.rb#228 def validate_config; end class << self @@ -54379,10 +54582,10 @@ class RuboCop::Formatter::ClangStyleFormatter < ::RuboCop::Formatter::SimpleText private - # source://rubocop//lib/rubocop/formatter/clang_style_formatter.rb#51 + # source://rubocop//lib/rubocop/formatter/clang_style_formatter.rb#47 def report_highlighted_area(highlighted_area); end - # source://rubocop//lib/rubocop/formatter/clang_style_formatter.rb#41 + # source://rubocop//lib/rubocop/formatter/clang_style_formatter.rb#37 def report_line(location); end # source://rubocop//lib/rubocop/formatter/clang_style_formatter.rb#17 @@ -54390,7 +54593,7 @@ class RuboCop::Formatter::ClangStyleFormatter < ::RuboCop::Formatter::SimpleText # @return [Boolean] # - # source://rubocop//lib/rubocop/formatter/clang_style_formatter.rb#37 + # source://rubocop//lib/rubocop/formatter/clang_style_formatter.rb#33 def valid_line?(offense); end end @@ -55333,10 +55536,10 @@ class RuboCop::Formatter::TapFormatter < ::RuboCop::Formatter::ClangStyleFormatt private - # source://rubocop//lib/rubocop/formatter/tap_formatter.rb#66 + # source://rubocop//lib/rubocop/formatter/tap_formatter.rb#62 def annotate_message(msg); end - # source://rubocop//lib/rubocop/formatter/tap_formatter.rb#70 + # source://rubocop//lib/rubocop/formatter/tap_formatter.rb#66 def message(offense); end # source://rubocop//lib/rubocop/formatter/tap_formatter.rb#39 @@ -55682,31 +55885,59 @@ RuboCop::LSP::Severity::SEVERITIES = T.let(T.unsafe(nil), Hash) # # source://rubocop//lib/rubocop/lockfile.rb#7 class RuboCop::Lockfile - # Gems that the bundle depends on - # # @api private + # @param lockfile_path [String, Pathname, nil] + # @return [Lockfile] a new instance of Lockfile # # source://rubocop//lib/rubocop/lockfile.rb#9 + def initialize(lockfile_path = T.unsafe(nil)); end + + # Gems that the bundle directly depends on. + # + # @api private + # @return [Array, nil] + # + # source://rubocop//lib/rubocop/lockfile.rb#17 def dependencies; end - # All activated gems, including transitive dependencies + # Returns the locked versions of gems from this lockfile. # # @api private + # @param include_transitive_dependencies: [Boolean] When false, only direct dependencies + # are returned, i.e. those listed explicitly in the `Gemfile`. # - # source://rubocop//lib/rubocop/lockfile.rb#16 + # source://rubocop//lib/rubocop/lockfile.rb#37 + def gem_versions(include_transitive_dependencies: T.unsafe(nil)); end + + # All activated gems, including transitive dependencies. + # + # @api private + # @return [Array, nil] + # + # source://rubocop//lib/rubocop/lockfile.rb#25 def gems; end + # Whether this lockfile includes the named gem, directly or indirectly. + # # @api private + # @param name [String] # @return [Boolean] # - # source://rubocop//lib/rubocop/lockfile.rb#24 + # source://rubocop//lib/rubocop/lockfile.rb#53 def includes_gem?(name); end private # @api private + # @return [Boolean] + # + # source://rubocop//lib/rubocop/lockfile.rb#73 + def bundler_lock_parser_defined?; end + + # @api private + # @return [Bundler::LockfileParser, nil] # - # source://rubocop//lib/rubocop/lockfile.rb#30 + # source://rubocop//lib/rubocop/lockfile.rb#60 def parser; end end @@ -56558,36 +56789,36 @@ module RuboCop::RSpec; end # # source://rubocop//lib/rubocop/rspec/expect_offense.rb#103 module RuboCop::RSpec::ExpectOffense - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#130 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#138 def expect_correction(correction, loop: T.unsafe(nil), source: T.unsafe(nil)); end # @raise [RuboCop::Runner::InfiniteCorrectionLoop] # - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#167 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#175 def expect_no_corrections; end - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#181 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#189 def expect_no_offenses(source, file = T.unsafe(nil)); end - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#114 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#115 def expect_offense(source, file = T.unsafe(nil), severity: T.unsafe(nil), chomp: T.unsafe(nil), **replacements); end # source://rubocop//lib/rubocop/rspec/expect_offense.rb#104 def format_offense(source, **replacements); end - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#189 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#197 def parse_annotations(source, raise_error: T.unsafe(nil), **replacements); end - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#199 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#207 def parse_processed_source(source, file = T.unsafe(nil)); end - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#207 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#215 def set_formatter_options; end end # Parsed representation of code annotated with the `^^^ Message` style # -# source://rubocop//lib/rubocop/rspec/expect_offense.rb#214 +# source://rubocop//lib/rubocop/rspec/expect_offense.rb#222 class RuboCop::RSpec::ExpectOffense::AnnotatedSource # @note annotations are sorted so that reconstructing the annotation # text via {#to_s} is deterministic @@ -56595,10 +56826,10 @@ class RuboCop::RSpec::ExpectOffense::AnnotatedSource # @param annotations [Array<(Integer, String)>] each entry is the annotated line number and the annotation text # @return [AnnotatedSource] a new instance of AnnotatedSource # - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#246 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#254 def initialize(lines, annotations); end - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#251 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#259 def ==(other); end # Construct annotated source string (like what we parse) @@ -56623,7 +56854,7 @@ class RuboCop::RSpec::ExpectOffense::AnnotatedSource # source1.to_s == source2.to_s # => true # @return [String] # - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#293 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#301 def inspect; end # Dirty hack: expectations with [...] are rewritten when they match @@ -56631,14 +56862,14 @@ class RuboCop::RSpec::ExpectOffense::AnnotatedSource # # @return [Boolean] # - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#257 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#265 def match_annotations?(other); end # Return the plain source code without annotations # # @return [String] # - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#307 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#315 def plain_source; end # Construct annotated source string (like what we parse) @@ -56664,7 +56895,7 @@ class RuboCop::RSpec::ExpectOffense::AnnotatedSource # source1.to_s == source2.to_s # => true # @return [String] # - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#293 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#301 def to_s; end # Annotate the source code with the RuboCop offenses provided @@ -56672,19 +56903,19 @@ class RuboCop::RSpec::ExpectOffense::AnnotatedSource # @param offenses [Array] # @return [self] # - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#316 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#324 def with_offense_annotations(offenses); end protected # Returns the value of attribute annotations. # - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#331 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#339 def annotations; end # Returns the value of attribute lines. # - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#331 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#339 def lines; end class << self @@ -56694,15 +56925,15 @@ class RuboCop::RSpec::ExpectOffense::AnnotatedSource # @param annotated_source [String] string passed to the matchers # @return [AnnotatedSource] # - # source://rubocop//lib/rubocop/rspec/expect_offense.rb#224 + # source://rubocop//lib/rubocop/rspec/expect_offense.rb#232 def parse(annotated_source); end end end -# source://rubocop//lib/rubocop/rspec/expect_offense.rb#216 +# source://rubocop//lib/rubocop/rspec/expect_offense.rb#224 RuboCop::RSpec::ExpectOffense::AnnotatedSource::ABBREV = T.let(T.unsafe(nil), String) -# source://rubocop//lib/rubocop/rspec/expect_offense.rb#215 +# source://rubocop//lib/rubocop/rspec/expect_offense.rb#223 RuboCop::RSpec::ExpectOffense::AnnotatedSource::ANNOTATION_PATTERN = T.let(T.unsafe(nil), Regexp) # Common methods and behaviors for dealing with remote config files. @@ -56977,145 +57208,145 @@ RuboCop::ResultCache::NON_CHANGING = T.let(T.unsafe(nil), Array) class RuboCop::Runner # @return [Runner] a new instance of Runner # - # source://rubocop//lib/rubocop/runner.rb#59 + # source://rubocop//lib/rubocop/runner.rb#62 def initialize(options, config_store); end # Sets the attribute aborting # # @param value the value to set the attribute aborting to. # - # source://rubocop//lib/rubocop/runner.rb#57 + # source://rubocop//lib/rubocop/runner.rb#60 def aborting=(_arg0); end # @return [Boolean] # - # source://rubocop//lib/rubocop/runner.rb#83 + # source://rubocop//lib/rubocop/runner.rb#86 def aborting?; end # Returns the value of attribute errors. # - # source://rubocop//lib/rubocop/runner.rb#56 + # source://rubocop//lib/rubocop/runner.rb#59 def errors; end - # source://rubocop//lib/rubocop/runner.rb#67 + # source://rubocop//lib/rubocop/runner.rb#70 def run(paths); end # Returns the value of attribute warnings. # - # source://rubocop//lib/rubocop/runner.rb#56 + # source://rubocop//lib/rubocop/runner.rb#59 def warnings; end private - # source://rubocop//lib/rubocop/runner.rb#196 + # source://rubocop//lib/rubocop/runner.rb#199 def add_redundant_disables(file, offenses, source); end - # source://rubocop//lib/rubocop/runner.rb#170 + # source://rubocop//lib/rubocop/runner.rb#173 def cached_result(file, team); end # @return [Boolean] # - # source://rubocop//lib/rubocop/runner.rb#250 + # source://rubocop//lib/rubocop/runner.rb#253 def cached_run?; end # Check whether a run created source identical to a previous run, which # means that we definitely have an infinite loop. # - # source://rubocop//lib/rubocop/runner.rb#328 + # source://rubocop//lib/rubocop/runner.rb#331 def check_for_infinite_loop(processed_source, offenses_by_iteration); end # @return [Boolean] # - # source://rubocop//lib/rubocop/runner.rb#222 + # source://rubocop//lib/rubocop/runner.rb#225 def check_for_redundant_disables?(source); end # @return [Boolean] # - # source://rubocop//lib/rubocop/runner.rb#423 + # source://rubocop//lib/rubocop/runner.rb#426 def considered_failure?(offense); end - # source://rubocop//lib/rubocop/runner.rb#456 + # source://rubocop//lib/rubocop/runner.rb#459 def default_config(cop_name); end - # source://rubocop//lib/rubocop/runner.rb#272 + # source://rubocop//lib/rubocop/runner.rb#275 def do_inspection_loop(file); end - # source://rubocop//lib/rubocop/runner.rb#133 + # source://rubocop//lib/rubocop/runner.rb#136 def each_inspected_file(files); end # @return [Boolean] # - # source://rubocop//lib/rubocop/runner.rb#236 + # source://rubocop//lib/rubocop/runner.rb#239 def except_redundant_cop_disable_directive?; end - # source://rubocop//lib/rubocop/runner.rb#357 + # source://rubocop//lib/rubocop/runner.rb#360 def extract_ruby_sources(processed_source); end - # source://rubocop//lib/rubocop/runner.rb#245 + # source://rubocop//lib/rubocop/runner.rb#248 def file_finished(file, offenses); end - # source://rubocop//lib/rubocop/runner.rb#174 + # source://rubocop//lib/rubocop/runner.rb#177 def file_offense_cache(file); end - # source://rubocop//lib/rubocop/runner.rb#162 + # source://rubocop//lib/rubocop/runner.rb#165 def file_offenses(file); end - # source://rubocop//lib/rubocop/runner.rb#240 + # source://rubocop//lib/rubocop/runner.rb#243 def file_started(file); end - # source://rubocop//lib/rubocop/runner.rb#403 + # source://rubocop//lib/rubocop/runner.rb#406 def filter_cop_classes(cop_classes, config); end - # source://rubocop//lib/rubocop/runner.rb#104 + # source://rubocop//lib/rubocop/runner.rb#107 def find_target_files(paths); end - # source://rubocop//lib/rubocop/runner.rb#414 + # source://rubocop//lib/rubocop/runner.rb#417 def formatter_set; end - # source://rubocop//lib/rubocop/runner.rb#471 + # source://rubocop//lib/rubocop/runner.rb#474 def get_processed_source(file); end - # source://rubocop//lib/rubocop/runner.rb#342 + # source://rubocop//lib/rubocop/runner.rb#345 def inspect_file(processed_source, team = T.unsafe(nil)); end - # source://rubocop//lib/rubocop/runner.rb#115 + # source://rubocop//lib/rubocop/runner.rb#118 def inspect_files(files); end - # source://rubocop//lib/rubocop/runner.rb#303 + # source://rubocop//lib/rubocop/runner.rb#306 def iterate_until_no_changes(source, offenses_by_iteration); end - # source://rubocop//lib/rubocop/runner.rb#148 + # source://rubocop//lib/rubocop/runner.rb#151 def list_files(paths); end # @return [Boolean] # - # source://rubocop//lib/rubocop/runner.rb#452 + # source://rubocop//lib/rubocop/runner.rb#455 def mark_as_safe_by_config?(config); end - # source://rubocop//lib/rubocop/runner.rb#460 + # source://rubocop//lib/rubocop/runner.rb#463 def minimum_severity_to_fail; end - # source://rubocop//lib/rubocop/runner.rb#364 + # source://rubocop//lib/rubocop/runner.rb#367 def mobilize_team(processed_source); end - # source://rubocop//lib/rubocop/runner.rb#369 + # source://rubocop//lib/rubocop/runner.rb#372 def mobilized_cop_classes(config); end - # source://rubocop//lib/rubocop/runner.rb#432 + # source://rubocop//lib/rubocop/runner.rb#435 def offenses_to_report(offenses); end - # source://rubocop//lib/rubocop/runner.rb#152 + # source://rubocop//lib/rubocop/runner.rb#155 def process_file(file); end - # source://rubocop//lib/rubocop/runner.rb#393 + # source://rubocop//lib/rubocop/runner.rb#396 def qualify_option_cop_names; end # @yield [cop] # - # source://rubocop//lib/rubocop/runner.rb#228 + # source://rubocop//lib/rubocop/runner.rb#231 def redundant_cop_disable_directive(file); end - # source://rubocop//lib/rubocop/runner.rb#262 + # source://rubocop//lib/rubocop/runner.rb#265 def save_in_cache(cache, offenses); end # A Cop::Team instance is stateful and may change when inspecting. @@ -57123,41 +57354,41 @@ class RuboCop::Runner # otherwise dormant team that can be used for config- and option- # level caching in ResultCache. # - # source://rubocop//lib/rubocop/runner.rb#499 + # source://rubocop//lib/rubocop/runner.rb#502 def standby_team(config); end # @return [Boolean] # - # source://rubocop//lib/rubocop/runner.rb#410 + # source://rubocop//lib/rubocop/runner.rb#413 def style_guide_cops_only?(config); end # @return [Boolean] # - # source://rubocop//lib/rubocop/runner.rb#444 + # source://rubocop//lib/rubocop/runner.rb#447 def supports_safe_autocorrect?(offense); end # @yield [team] # - # source://rubocop//lib/rubocop/runner.rb#211 + # source://rubocop//lib/rubocop/runner.rb#214 def team_for_redundant_disables(file, offenses, source); end # Warms up the RuboCop cache by forking a suitable number of RuboCop # instances that each inspects its allotted group of files. # - # source://rubocop//lib/rubocop/runner.rb#91 + # source://rubocop//lib/rubocop/runner.rb#94 def warm_cache(target_files); end class << self # @return [Array<#call>] # - # source://rubocop//lib/rubocop/runner.rb#29 + # source://rubocop//lib/rubocop/runner.rb#32 def ruby_extractors; end private # @return [#call] # - # source://rubocop//lib/rubocop/runner.rb#36 + # source://rubocop//lib/rubocop/runner.rb#39 def default_ruby_extractor; end end end @@ -57180,12 +57411,12 @@ end # @api private # -# source://rubocop//lib/rubocop/runner.rb#49 +# source://rubocop//lib/rubocop/runner.rb#52 RuboCop::Runner::MAX_ITERATIONS = T.let(T.unsafe(nil), Integer) # @api private # -# source://rubocop//lib/rubocop/runner.rb#52 +# source://rubocop//lib/rubocop/runner.rb#55 RuboCop::Runner::REDUNDANT_COP_DISABLE_DIRECTIVE_RULES = T.let(T.unsafe(nil), Array) # Take a string with embedded escapes, and convert the escapes as the Ruby diff --git a/sorbet/rbi/gems/tapioca@0.13.1.rbi b/sorbet/rbi/gems/tapioca@0.13.2.rbi similarity index 98% rename from sorbet/rbi/gems/tapioca@0.13.1.rbi rename to sorbet/rbi/gems/tapioca@0.13.2.rbi index 2ea240e88..a0bc8c9c1 100644 --- a/sorbet/rbi/gems/tapioca@0.13.1.rbi +++ b/sorbet/rbi/gems/tapioca@0.13.2.rbi @@ -54,7 +54,7 @@ module RBI; end # source://tapioca//lib/tapioca/rbi_ext/model.rb#5 class RBI::Tree < ::RBI::NodeWithComments - # source://rbi/0.1.9/lib/rbi/model.rb#119 + # source://rbi/0.1.11/lib/rbi/model.rb#119 sig do params( loc: T.nilable(::RBI::Loc), @@ -64,19 +64,19 @@ class RBI::Tree < ::RBI::NodeWithComments end def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end - # source://rbi/0.1.9/lib/rbi/model.rb#126 + # source://rbi/0.1.11/lib/rbi/model.rb#126 sig { params(node: ::RBI::Node).void } def <<(node); end - # source://rbi/0.1.9/lib/rbi/printer.rb#226 + # source://rbi/0.1.11/lib/rbi/printer.rb#226 sig { override.params(v: ::RBI::Printer).void } def accept_printer(v); end - # source://rbi/0.1.9/lib/rbi/rewriters/add_sig_templates.rb#66 + # source://rbi/0.1.11/lib/rbi/rewriters/add_sig_templates.rb#66 sig { params(with_todo_comment: T::Boolean).void } def add_sig_templates!(with_todo_comment: T.unsafe(nil)); end - # source://rbi/0.1.9/lib/rbi/rewriters/annotate.rb#49 + # source://rbi/0.1.11/lib/rbi/rewriters/annotate.rb#49 sig { params(annotation: ::String, annotate_scopes: T::Boolean, annotate_properties: T::Boolean).void } def annotate!(annotation, annotate_scopes: T.unsafe(nil), annotate_properties: T.unsafe(nil)); end @@ -115,7 +115,7 @@ class RBI::Tree < ::RBI::NodeWithComments end def create_method(name, parameters: T.unsafe(nil), return_type: T.unsafe(nil), class_method: T.unsafe(nil), visibility: T.unsafe(nil), comments: T.unsafe(nil)); end - # source://tapioca//lib/tapioca/rbi_ext/model.rb#112 + # source://tapioca//lib/tapioca/rbi_ext/model.rb#113 sig do params( name: ::String, @@ -140,9 +140,9 @@ class RBI::Tree < ::RBI::NodeWithComments sig { params(constant: ::Module, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) } def create_path(constant, &block); end - # source://tapioca//lib/tapioca/rbi_ext/model.rb#133 - sig { params(parameters: T::Array[::RBI::TypedParam], return_type: ::String).returns(::RBI::Sig) } - def create_sig(parameters: T.unsafe(nil), return_type: T.unsafe(nil)); end + # source://tapioca//lib/tapioca/rbi_ext/model.rb#134 + sig { params(parameters: T::Hash[T.any(::String, ::Symbol), ::String], return_type: ::String).returns(::RBI::Sig) } + def create_sig(parameters:, return_type: T.unsafe(nil)); end # source://tapioca//lib/tapioca/rbi_ext/model.rb#74 sig do @@ -157,27 +157,27 @@ class RBI::Tree < ::RBI::NodeWithComments end def create_type_variable(name, type:, variance: T.unsafe(nil), fixed: T.unsafe(nil), upper: T.unsafe(nil), lower: T.unsafe(nil)); end - # source://rbi/0.1.9/lib/rbi/rewriters/deannotate.rb#41 + # source://rbi/0.1.11/lib/rbi/rewriters/deannotate.rb#41 sig { params(annotation: ::String).void } def deannotate!(annotation); end - # source://rbi/0.1.9/lib/rbi/model.rb#132 + # source://rbi/0.1.11/lib/rbi/model.rb#132 sig { returns(T::Boolean) } def empty?; end - # source://rbi/0.1.9/lib/rbi/rewriters/filter_versions.rb#118 + # source://rbi/0.1.11/lib/rbi/rewriters/filter_versions.rb#118 sig { params(version: ::Gem::Version).void } def filter_versions!(version); end - # source://rbi/0.1.9/lib/rbi/rewriters/group_nodes.rb#38 + # source://rbi/0.1.11/lib/rbi/rewriters/group_nodes.rb#38 sig { void } def group_nodes!; end - # source://rbi/0.1.9/lib/rbi/index.rb#68 + # source://rbi/0.1.11/lib/rbi/index.rb#68 sig { returns(::RBI::Index) } def index; end - # source://rbi/0.1.9/lib/rbi/rewriters/merge_trees.rb#324 + # source://rbi/0.1.11/lib/rbi/rewriters/merge_trees.rb#324 sig do params( other: ::RBI::Tree, @@ -188,44 +188,44 @@ class RBI::Tree < ::RBI::NodeWithComments end def merge(other, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end - # source://rbi/0.1.9/lib/rbi/rewriters/nest_non_public_methods.rb#46 + # source://rbi/0.1.11/lib/rbi/rewriters/nest_non_public_methods.rb#46 sig { void } def nest_non_public_methods!; end - # source://rbi/0.1.9/lib/rbi/rewriters/nest_singleton_methods.rb#36 + # source://rbi/0.1.11/lib/rbi/rewriters/nest_singleton_methods.rb#36 sig { void } def nest_singleton_methods!; end - # source://rbi/0.1.9/lib/rbi/model.rb#110 + # source://rbi/0.1.11/lib/rbi/model.rb#110 sig { returns(T::Array[::RBI::Node]) } def nodes; end - # source://rbi/0.1.9/lib/rbi/printer.rb#233 + # source://rbi/0.1.11/lib/rbi/printer.rb#233 sig { override.returns(T::Boolean) } def oneline?; end - # source://rbi/0.1.9/lib/rbi/rewriters/sort_nodes.rb#119 + # source://rbi/0.1.11/lib/rbi/rewriters/sort_nodes.rb#119 sig { void } def sort_nodes!; end private - # source://tapioca//lib/tapioca/rbi_ext/model.rb#148 + # source://tapioca//lib/tapioca/rbi_ext/model.rb#149 sig { params(node: ::RBI::Node).returns(::RBI::Node) } def create_node(node); end - # source://tapioca//lib/tapioca/rbi_ext/model.rb#143 + # source://tapioca//lib/tapioca/rbi_ext/model.rb#144 sig { returns(T::Hash[::String, ::RBI::Node]) } def nodes_cache; end end -# source://tapioca//lib/tapioca/rbi_ext/model.rb#158 +# source://tapioca//lib/tapioca/rbi_ext/model.rb#159 class RBI::TypedParam < ::T::Struct const :param, ::RBI::Param const :type, ::String class << self - # source://sorbet-runtime/0.5.11319/lib/types/struct.rb#13 + # source://sorbet-runtime/0.5.11346/lib/types/struct.rb#13 def inherited(s); end end end @@ -1142,7 +1142,7 @@ class Tapioca::ConfigHelper::ConfigError < ::T::Struct const :message_parts, T::Array[::Tapioca::ConfigHelper::ConfigErrorMessagePart] class << self - # source://sorbet-runtime/0.5.11319/lib/types/struct.rb#13 + # source://sorbet-runtime/0.5.11346/lib/types/struct.rb#13 def inherited(s); end end end @@ -1153,7 +1153,7 @@ class Tapioca::ConfigHelper::ConfigErrorMessagePart < ::T::Struct const :colors, T::Array[::Symbol] class << self - # source://sorbet-runtime/0.5.11319/lib/types/struct.rb#13 + # source://sorbet-runtime/0.5.11346/lib/types/struct.rb#13 def inherited(s); end end end @@ -2453,7 +2453,7 @@ class Tapioca::Loaders::Loader # @param engine [T.class_of(Rails::Engine)] # @return [Array] # - # source://sorbet-runtime/0.5.11319/lib/types/private/methods/_methods.rb#257 + # source://sorbet-runtime/0.5.11346/lib/types/private/methods/_methods.rb#257 def eager_load_paths(*args, **_arg1, &blk); end # source://tapioca//lib/tapioca/loaders/loader.rb#198 @@ -3361,7 +3361,7 @@ module Tapioca::Static::SymbolLoader # @return [Array] # - # source://sorbet-runtime/0.5.11319/lib/types/private/methods/_methods.rb#257 + # source://sorbet-runtime/0.5.11346/lib/types/private/methods/_methods.rb#257 def engines(*args, **_arg1, &blk); end # source://tapioca//lib/tapioca/static/symbol_loader.rb#82