prism 0.28.0 → 0.30.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +41 -1
- data/CONTRIBUTING.md +0 -4
- data/README.md +1 -0
- data/config.yml +95 -26
- data/docs/fuzzing.md +1 -1
- data/docs/ripper_translation.md +22 -0
- data/ext/prism/api_node.c +70 -52
- data/ext/prism/extconf.rb +27 -23
- data/ext/prism/extension.c +107 -372
- data/ext/prism/extension.h +1 -1
- data/include/prism/ast.h +170 -102
- data/include/prism/diagnostic.h +18 -3
- data/include/prism/node.h +0 -21
- data/include/prism/parser.h +23 -25
- data/include/prism/regexp.h +17 -8
- data/include/prism/static_literals.h +3 -2
- data/include/prism/util/pm_char.h +1 -2
- data/include/prism/util/pm_constant_pool.h +0 -8
- data/include/prism/util/pm_integer.h +16 -9
- data/include/prism/util/pm_string.h +0 -8
- data/include/prism/version.h +2 -2
- data/include/prism.h +0 -11
- data/lib/prism/compiler.rb +3 -0
- data/lib/prism/desugar_compiler.rb +4 -4
- data/lib/prism/dispatcher.rb +14 -0
- data/lib/prism/dot_visitor.rb +54 -35
- data/lib/prism/dsl.rb +23 -18
- data/lib/prism/ffi.rb +25 -4
- data/lib/prism/inspect_visitor.rb +26 -24
- data/lib/prism/mutation_compiler.rb +6 -1
- data/lib/prism/node.rb +314 -389
- data/lib/prism/node_ext.rb +175 -17
- data/lib/prism/parse_result/comments.rb +1 -8
- data/lib/prism/parse_result/newlines.rb +102 -12
- data/lib/prism/parse_result.rb +17 -0
- data/lib/prism/reflection.rb +11 -9
- data/lib/prism/serialize.rb +91 -68
- data/lib/prism/translation/parser/compiler.rb +288 -138
- data/lib/prism/translation/parser.rb +7 -2
- data/lib/prism/translation/ripper.rb +24 -22
- data/lib/prism/translation/ruby_parser.rb +32 -14
- data/lib/prism/visitor.rb +3 -0
- data/lib/prism.rb +0 -4
- data/prism.gemspec +2 -4
- data/rbi/prism/node.rbi +114 -57
- data/rbi/prism/node_ext.rbi +5 -0
- data/rbi/prism/parse_result.rbi +1 -1
- data/rbi/prism/visitor.rbi +3 -0
- data/rbi/prism.rbi +6 -0
- data/sig/prism/dsl.rbs +13 -10
- data/sig/prism/lex_compat.rbs +10 -0
- data/sig/prism/mutation_compiler.rbs +1 -0
- data/sig/prism/node.rbs +72 -48
- data/sig/prism/node_ext.rbs +4 -0
- data/sig/prism/visitor.rbs +1 -0
- data/sig/prism.rbs +21 -0
- data/src/diagnostic.c +56 -27
- data/src/node.c +432 -1690
- data/src/prettyprint.c +97 -54
- data/src/prism.c +1286 -1196
- data/src/regexp.c +133 -68
- data/src/serialize.c +22 -17
- data/src/static_literals.c +63 -84
- data/src/token_type.c +4 -4
- data/src/util/pm_constant_pool.c +0 -8
- data/src/util/pm_integer.c +39 -11
- data/src/util/pm_string.c +0 -12
- data/src/util/pm_strpbrk.c +32 -6
- metadata +3 -5
- data/include/prism/util/pm_string_list.h +0 -44
- data/lib/prism/debug.rb +0 -249
- data/src/util/pm_string_list.c +0 -28
data/lib/prism/node.rb
CHANGED
@@ -36,18 +36,6 @@ module Prism
|
|
36
36
|
location.is_a?(Location) ? location.end_offset : ((location >> 32) + (location & 0xFFFFFFFF))
|
37
37
|
end
|
38
38
|
|
39
|
-
def newline? # :nodoc:
|
40
|
-
@newline ? true : false
|
41
|
-
end
|
42
|
-
|
43
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
44
|
-
line = location.start_line
|
45
|
-
unless newline_marked[line]
|
46
|
-
newline_marked[line] = true
|
47
|
-
@newline = true
|
48
|
-
end
|
49
|
-
end
|
50
|
-
|
51
39
|
# Returns all of the lines of the source code associated with this node.
|
52
40
|
def source_lines
|
53
41
|
location.source_lines
|
@@ -189,7 +177,6 @@ module Prism
|
|
189
177
|
# def initialize: (Prism::node new_name, Prism::node old_name, Location keyword_loc, Location location) -> void
|
190
178
|
def initialize(source, new_name, old_name, keyword_loc, location)
|
191
179
|
@source = source
|
192
|
-
@newline = false
|
193
180
|
@location = location
|
194
181
|
@new_name = new_name
|
195
182
|
@old_name = old_name
|
@@ -307,7 +294,6 @@ module Prism
|
|
307
294
|
# def initialize: (Prism::node new_name, Prism::node old_name, Location keyword_loc, Location location) -> void
|
308
295
|
def initialize(source, new_name, old_name, keyword_loc, location)
|
309
296
|
@source = source
|
310
|
-
@newline = false
|
311
297
|
@location = location
|
312
298
|
@new_name = new_name
|
313
299
|
@old_name = old_name
|
@@ -416,7 +402,6 @@ module Prism
|
|
416
402
|
# def initialize: (Prism::node left, Prism::node right, Location operator_loc, Location location) -> void
|
417
403
|
def initialize(source, left, right, operator_loc, location)
|
418
404
|
@source = source
|
419
|
-
@newline = false
|
420
405
|
@location = location
|
421
406
|
@left = left
|
422
407
|
@right = right
|
@@ -525,7 +510,6 @@ module Prism
|
|
525
510
|
# def initialize: (Prism::node left, Prism::node right, Location operator_loc, Location location) -> void
|
526
511
|
def initialize(source, left, right, operator_loc, location)
|
527
512
|
@source = source
|
528
|
-
@newline = false
|
529
513
|
@location = location
|
530
514
|
@left = left
|
531
515
|
@right = right
|
@@ -649,7 +633,6 @@ module Prism
|
|
649
633
|
# def initialize: (Integer flags, Array[Prism::node] arguments, Location location) -> void
|
650
634
|
def initialize(source, flags, arguments, location)
|
651
635
|
@source = source
|
652
|
-
@newline = false
|
653
636
|
@location = location
|
654
637
|
@flags = flags
|
655
638
|
@arguments = arguments
|
@@ -756,7 +739,6 @@ module Prism
|
|
756
739
|
# def initialize: (Integer flags, Array[Prism::node] elements, Location? opening_loc, Location? closing_loc, Location location) -> void
|
757
740
|
def initialize(source, flags, elements, opening_loc, closing_loc, location)
|
758
741
|
@source = source
|
759
|
-
@newline = false
|
760
742
|
@location = location
|
761
743
|
@flags = flags
|
762
744
|
@elements = elements
|
@@ -920,7 +902,6 @@ module Prism
|
|
920
902
|
# 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
|
921
903
|
def initialize(source, constant, requireds, rest, posts, opening_loc, closing_loc, location)
|
922
904
|
@source = source
|
923
|
-
@newline = false
|
924
905
|
@location = location
|
925
906
|
@constant = constant
|
926
907
|
@requireds = requireds
|
@@ -1072,7 +1053,6 @@ module Prism
|
|
1072
1053
|
# def initialize: (Prism::node key, Prism::node value, Location? operator_loc, Location location) -> void
|
1073
1054
|
def initialize(source, key, value, operator_loc, location)
|
1074
1055
|
@source = source
|
1075
|
-
@newline = false
|
1076
1056
|
@location = location
|
1077
1057
|
@key = key
|
1078
1058
|
@value = value
|
@@ -1205,7 +1185,6 @@ module Prism
|
|
1205
1185
|
# def initialize: (Prism::node? value, Location operator_loc, Location location) -> void
|
1206
1186
|
def initialize(source, value, operator_loc, location)
|
1207
1187
|
@source = source
|
1208
|
-
@newline = false
|
1209
1188
|
@location = location
|
1210
1189
|
@value = value
|
1211
1190
|
@operator_loc = operator_loc
|
@@ -1317,7 +1296,6 @@ module Prism
|
|
1317
1296
|
# def initialize: (Symbol name, Location location) -> void
|
1318
1297
|
def initialize(source, name, location)
|
1319
1298
|
@source = source
|
1320
|
-
@newline = false
|
1321
1299
|
@location = location
|
1322
1300
|
@name = name
|
1323
1301
|
end
|
@@ -1413,7 +1391,6 @@ module Prism
|
|
1413
1391
|
# def initialize: (Location? begin_keyword_loc, StatementsNode? statements, RescueNode? rescue_clause, ElseNode? else_clause, EnsureNode? ensure_clause, Location? end_keyword_loc, Location location) -> void
|
1414
1392
|
def initialize(source, begin_keyword_loc, statements, rescue_clause, else_clause, ensure_clause, end_keyword_loc, location)
|
1415
1393
|
@source = source
|
1416
|
-
@newline = false
|
1417
1394
|
@location = location
|
1418
1395
|
@begin_keyword_loc = begin_keyword_loc
|
1419
1396
|
@statements = statements
|
@@ -1428,10 +1405,6 @@ module Prism
|
|
1428
1405
|
visitor.visit_begin_node(self)
|
1429
1406
|
end
|
1430
1407
|
|
1431
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
1432
|
-
# Never mark BeginNode with a newline flag, mark children instead
|
1433
|
-
end
|
1434
|
-
|
1435
1408
|
# def child_nodes: () -> Array[nil | Node]
|
1436
1409
|
def child_nodes
|
1437
1410
|
[statements, rescue_clause, else_clause, ensure_clause]
|
@@ -1567,7 +1540,6 @@ module Prism
|
|
1567
1540
|
# def initialize: (Prism::node? expression, Location operator_loc, Location location) -> void
|
1568
1541
|
def initialize(source, expression, operator_loc, location)
|
1569
1542
|
@source = source
|
1570
|
-
@newline = false
|
1571
1543
|
@location = location
|
1572
1544
|
@expression = expression
|
1573
1545
|
@operator_loc = operator_loc
|
@@ -1673,7 +1645,6 @@ module Prism
|
|
1673
1645
|
# def initialize: (Integer flags, Symbol name, Location location) -> void
|
1674
1646
|
def initialize(source, flags, name, location)
|
1675
1647
|
@source = source
|
1676
|
-
@newline = false
|
1677
1648
|
@location = location
|
1678
1649
|
@flags = flags
|
1679
1650
|
@name = name
|
@@ -1774,7 +1745,6 @@ module Prism
|
|
1774
1745
|
# def initialize: (Array[Symbol] locals, Prism::node? parameters, Prism::node? body, Location opening_loc, Location closing_loc, Location location) -> void
|
1775
1746
|
def initialize(source, locals, parameters, body, opening_loc, closing_loc, location)
|
1776
1747
|
@source = source
|
1777
|
-
@newline = false
|
1778
1748
|
@location = location
|
1779
1749
|
@locals = locals
|
1780
1750
|
@parameters = parameters
|
@@ -1907,7 +1877,6 @@ module Prism
|
|
1907
1877
|
# def initialize: (Integer flags, Symbol? name, Location? name_loc, Location operator_loc, Location location) -> void
|
1908
1878
|
def initialize(source, flags, name, name_loc, operator_loc, location)
|
1909
1879
|
@source = source
|
1910
|
-
@newline = false
|
1911
1880
|
@location = location
|
1912
1881
|
@flags = flags
|
1913
1882
|
@name = name
|
@@ -2041,7 +2010,6 @@ module Prism
|
|
2041
2010
|
# def initialize: (ParametersNode? parameters, Array[BlockLocalVariableNode] locals, Location? opening_loc, Location? closing_loc, Location location) -> void
|
2042
2011
|
def initialize(source, parameters, locals, opening_loc, closing_loc, location)
|
2043
2012
|
@source = source
|
2044
|
-
@newline = false
|
2045
2013
|
@location = location
|
2046
2014
|
@parameters = parameters
|
2047
2015
|
@locals = locals
|
@@ -2180,7 +2148,6 @@ module Prism
|
|
2180
2148
|
# def initialize: (ArgumentsNode? arguments, Location keyword_loc, Location location) -> void
|
2181
2149
|
def initialize(source, arguments, keyword_loc, location)
|
2182
2150
|
@source = source
|
2183
|
-
@newline = false
|
2184
2151
|
@location = location
|
2185
2152
|
@arguments = arguments
|
2186
2153
|
@keyword_loc = keyword_loc
|
@@ -2292,7 +2259,6 @@ module Prism
|
|
2292
2259
|
# 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
|
2293
2260
|
def initialize(source, flags, receiver, call_operator_loc, message_loc, read_name, write_name, operator_loc, value, location)
|
2294
2261
|
@source = source
|
2295
|
-
@newline = false
|
2296
2262
|
@location = location
|
2297
2263
|
@flags = flags
|
2298
2264
|
@receiver = receiver
|
@@ -2495,7 +2461,6 @@ module Prism
|
|
2495
2461
|
# 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
|
2496
2462
|
def initialize(source, flags, receiver, call_operator_loc, name, message_loc, opening_loc, arguments, closing_loc, block, location)
|
2497
2463
|
@source = source
|
2498
|
-
@newline = false
|
2499
2464
|
@location = location
|
2500
2465
|
@flags = flags
|
2501
2466
|
@receiver = receiver
|
@@ -2716,10 +2681,9 @@ module Prism
|
|
2716
2681
|
# foo.bar += baz
|
2717
2682
|
# ^^^^^^^^^^^^^^
|
2718
2683
|
class CallOperatorWriteNode < Node
|
2719
|
-
# def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Location? message_loc, Symbol read_name, Symbol write_name, Symbol
|
2720
|
-
def initialize(source, flags, receiver, call_operator_loc, message_loc, read_name, write_name,
|
2684
|
+
# def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Location? message_loc, Symbol read_name, Symbol write_name, Symbol binary_operator, Location binary_operator_loc, Prism::node value, Location location) -> void
|
2685
|
+
def initialize(source, flags, receiver, call_operator_loc, message_loc, read_name, write_name, binary_operator, binary_operator_loc, value, location)
|
2721
2686
|
@source = source
|
2722
|
-
@newline = false
|
2723
2687
|
@location = location
|
2724
2688
|
@flags = flags
|
2725
2689
|
@receiver = receiver
|
@@ -2727,8 +2691,8 @@ module Prism
|
|
2727
2691
|
@message_loc = message_loc
|
2728
2692
|
@read_name = read_name
|
2729
2693
|
@write_name = write_name
|
2730
|
-
@
|
2731
|
-
@
|
2694
|
+
@binary_operator = binary_operator
|
2695
|
+
@binary_operator_loc = binary_operator_loc
|
2732
2696
|
@value = value
|
2733
2697
|
end
|
2734
2698
|
|
@@ -2752,20 +2716,20 @@ module Prism
|
|
2752
2716
|
|
2753
2717
|
# def comment_targets: () -> Array[Node | Location]
|
2754
2718
|
def comment_targets
|
2755
|
-
[*receiver, *call_operator_loc, *message_loc,
|
2719
|
+
[*receiver, *call_operator_loc, *message_loc, binary_operator_loc, value] #: Array[Prism::node | Location]
|
2756
2720
|
end
|
2757
2721
|
|
2758
|
-
# def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?message_loc: Location?, ?read_name: Symbol, ?write_name: Symbol, ?
|
2759
|
-
def copy(flags: self.flags, receiver: self.receiver, call_operator_loc: self.call_operator_loc, message_loc: self.message_loc, read_name: self.read_name, write_name: self.write_name,
|
2760
|
-
CallOperatorWriteNode.new(source, flags, receiver, call_operator_loc, message_loc, read_name, write_name,
|
2722
|
+
# def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?message_loc: Location?, ?read_name: Symbol, ?write_name: Symbol, ?binary_operator: Symbol, ?binary_operator_loc: Location, ?value: Prism::node, ?location: Location) -> CallOperatorWriteNode
|
2723
|
+
def copy(flags: self.flags, receiver: self.receiver, call_operator_loc: self.call_operator_loc, message_loc: self.message_loc, read_name: self.read_name, write_name: self.write_name, binary_operator: self.binary_operator, binary_operator_loc: self.binary_operator_loc, value: self.value, location: self.location)
|
2724
|
+
CallOperatorWriteNode.new(source, flags, receiver, call_operator_loc, message_loc, read_name, write_name, binary_operator, binary_operator_loc, value, location)
|
2761
2725
|
end
|
2762
2726
|
|
2763
2727
|
# def deconstruct: () -> Array[nil | Node]
|
2764
2728
|
alias deconstruct child_nodes
|
2765
2729
|
|
2766
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol,
|
2730
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, receiver: Prism::node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol, binary_operator: Symbol, binary_operator_loc: Location, value: Prism::node, location: Location }
|
2767
2731
|
def deconstruct_keys(keys)
|
2768
|
-
{ flags: flags, receiver: receiver, call_operator_loc: call_operator_loc, message_loc: message_loc, read_name: read_name, write_name: write_name,
|
2732
|
+
{ flags: flags, receiver: receiver, call_operator_loc: call_operator_loc, message_loc: message_loc, read_name: read_name, write_name: write_name, binary_operator: binary_operator, binary_operator_loc: binary_operator_loc, value: value, location: location }
|
2769
2733
|
end
|
2770
2734
|
|
2771
2735
|
# protected attr_reader flags: Integer
|
@@ -2807,14 +2771,14 @@ module Prism
|
|
2807
2771
|
# attr_reader write_name: Symbol
|
2808
2772
|
attr_reader :write_name
|
2809
2773
|
|
2810
|
-
# attr_reader
|
2811
|
-
attr_reader :
|
2774
|
+
# attr_reader binary_operator: Symbol
|
2775
|
+
attr_reader :binary_operator
|
2812
2776
|
|
2813
|
-
# attr_reader
|
2814
|
-
def
|
2815
|
-
location = @
|
2777
|
+
# attr_reader binary_operator_loc: Location
|
2778
|
+
def binary_operator_loc
|
2779
|
+
location = @binary_operator_loc
|
2816
2780
|
return location if location.is_a?(Location)
|
2817
|
-
@
|
2781
|
+
@binary_operator_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
2818
2782
|
end
|
2819
2783
|
|
2820
2784
|
# attr_reader value: Prism::node
|
@@ -2893,8 +2857,8 @@ module Prism
|
|
2893
2857
|
(message_loc.nil? == other.message_loc.nil?) &&
|
2894
2858
|
(read_name === other.read_name) &&
|
2895
2859
|
(write_name === other.write_name) &&
|
2896
|
-
(
|
2897
|
-
(
|
2860
|
+
(binary_operator === other.binary_operator) &&
|
2861
|
+
(binary_operator_loc.nil? == other.binary_operator_loc.nil?) &&
|
2898
2862
|
(value === other.value)
|
2899
2863
|
end
|
2900
2864
|
end
|
@@ -2907,7 +2871,6 @@ module Prism
|
|
2907
2871
|
# 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
|
2908
2872
|
def initialize(source, flags, receiver, call_operator_loc, message_loc, read_name, write_name, operator_loc, value, location)
|
2909
2873
|
@source = source
|
2910
|
-
@newline = false
|
2911
2874
|
@location = location
|
2912
2875
|
@flags = flags
|
2913
2876
|
@receiver = receiver
|
@@ -3103,7 +3066,6 @@ module Prism
|
|
3103
3066
|
# def initialize: (Integer flags, Prism::node receiver, Location call_operator_loc, Symbol name, Location message_loc, Location location) -> void
|
3104
3067
|
def initialize(source, flags, receiver, call_operator_loc, name, message_loc, location)
|
3105
3068
|
@source = source
|
3106
|
-
@newline = false
|
3107
3069
|
@location = location
|
3108
3070
|
@flags = flags
|
3109
3071
|
@receiver = receiver
|
@@ -3252,7 +3214,6 @@ module Prism
|
|
3252
3214
|
# def initialize: (Prism::node value, Prism::node target, Location operator_loc, Location location) -> void
|
3253
3215
|
def initialize(source, value, target, operator_loc, location)
|
3254
3216
|
@source = source
|
3255
|
-
@newline = false
|
3256
3217
|
@location = location
|
3257
3218
|
@value = value
|
3258
3219
|
@target = target
|
@@ -3363,7 +3324,6 @@ module Prism
|
|
3363
3324
|
# def initialize: (Prism::node? predicate, Array[Prism::node] conditions, ElseNode? consequent, Location case_keyword_loc, Location end_keyword_loc, Location location) -> void
|
3364
3325
|
def initialize(source, predicate, conditions, consequent, case_keyword_loc, end_keyword_loc, location)
|
3365
3326
|
@source = source
|
3366
|
-
@newline = false
|
3367
3327
|
@location = location
|
3368
3328
|
@predicate = predicate
|
3369
3329
|
@conditions = conditions
|
@@ -3498,7 +3458,6 @@ module Prism
|
|
3498
3458
|
# def initialize: (Prism::node? predicate, Array[Prism::node] conditions, ElseNode? consequent, Location case_keyword_loc, Location end_keyword_loc, Location location) -> void
|
3499
3459
|
def initialize(source, predicate, conditions, consequent, case_keyword_loc, end_keyword_loc, location)
|
3500
3460
|
@source = source
|
3501
|
-
@newline = false
|
3502
3461
|
@location = location
|
3503
3462
|
@predicate = predicate
|
3504
3463
|
@conditions = conditions
|
@@ -3631,7 +3590,6 @@ module Prism
|
|
3631
3590
|
# 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
|
3632
3591
|
def initialize(source, locals, class_keyword_loc, constant_path, inheritance_operator_loc, superclass, body, end_keyword_loc, name, location)
|
3633
3592
|
@source = source
|
3634
|
-
@newline = false
|
3635
3593
|
@location = location
|
3636
3594
|
@locals = locals
|
3637
3595
|
@class_keyword_loc = class_keyword_loc
|
@@ -3794,7 +3752,6 @@ module Prism
|
|
3794
3752
|
# def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void
|
3795
3753
|
def initialize(source, name, name_loc, operator_loc, value, location)
|
3796
3754
|
@source = source
|
3797
|
-
@newline = false
|
3798
3755
|
@location = location
|
3799
3756
|
@name = name
|
3800
3757
|
@name_loc = name_loc
|
@@ -3909,16 +3866,15 @@ module Prism
|
|
3909
3866
|
# @@target += value
|
3910
3867
|
# ^^^^^^^^^^^^^^^^^
|
3911
3868
|
class ClassVariableOperatorWriteNode < Node
|
3912
|
-
# def initialize: (Symbol name, Location name_loc, Location
|
3913
|
-
def initialize(source, name, name_loc,
|
3869
|
+
# def initialize: (Symbol name, Location name_loc, Location binary_operator_loc, Prism::node value, Symbol binary_operator, Location location) -> void
|
3870
|
+
def initialize(source, name, name_loc, binary_operator_loc, value, binary_operator, location)
|
3914
3871
|
@source = source
|
3915
|
-
@newline = false
|
3916
3872
|
@location = location
|
3917
3873
|
@name = name
|
3918
3874
|
@name_loc = name_loc
|
3919
|
-
@
|
3875
|
+
@binary_operator_loc = binary_operator_loc
|
3920
3876
|
@value = value
|
3921
|
-
@
|
3877
|
+
@binary_operator = binary_operator
|
3922
3878
|
end
|
3923
3879
|
|
3924
3880
|
# def accept: (Visitor visitor) -> void
|
@@ -3938,20 +3894,20 @@ module Prism
|
|
3938
3894
|
|
3939
3895
|
# def comment_targets: () -> Array[Node | Location]
|
3940
3896
|
def comment_targets
|
3941
|
-
[name_loc,
|
3897
|
+
[name_loc, binary_operator_loc, value] #: Array[Prism::node | Location]
|
3942
3898
|
end
|
3943
3899
|
|
3944
|
-
# def copy: (?name: Symbol, ?name_loc: Location, ?
|
3945
|
-
def copy(name: self.name, name_loc: self.name_loc,
|
3946
|
-
ClassVariableOperatorWriteNode.new(source, name, name_loc,
|
3900
|
+
# def copy: (?name: Symbol, ?name_loc: Location, ?binary_operator_loc: Location, ?value: Prism::node, ?binary_operator: Symbol, ?location: Location) -> ClassVariableOperatorWriteNode
|
3901
|
+
def copy(name: self.name, name_loc: self.name_loc, binary_operator_loc: self.binary_operator_loc, value: self.value, binary_operator: self.binary_operator, location: self.location)
|
3902
|
+
ClassVariableOperatorWriteNode.new(source, name, name_loc, binary_operator_loc, value, binary_operator, location)
|
3947
3903
|
end
|
3948
3904
|
|
3949
3905
|
# def deconstruct: () -> Array[nil | Node]
|
3950
3906
|
alias deconstruct child_nodes
|
3951
3907
|
|
3952
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location,
|
3908
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, binary_operator_loc: Location, value: Prism::node, binary_operator: Symbol, location: Location }
|
3953
3909
|
def deconstruct_keys(keys)
|
3954
|
-
{ name: name, name_loc: name_loc,
|
3910
|
+
{ name: name, name_loc: name_loc, binary_operator_loc: binary_operator_loc, value: value, binary_operator: binary_operator, location: location }
|
3955
3911
|
end
|
3956
3912
|
|
3957
3913
|
# attr_reader name: Symbol
|
@@ -3964,18 +3920,18 @@ module Prism
|
|
3964
3920
|
@name_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
3965
3921
|
end
|
3966
3922
|
|
3967
|
-
# attr_reader
|
3968
|
-
def
|
3969
|
-
location = @
|
3923
|
+
# attr_reader binary_operator_loc: Location
|
3924
|
+
def binary_operator_loc
|
3925
|
+
location = @binary_operator_loc
|
3970
3926
|
return location if location.is_a?(Location)
|
3971
|
-
@
|
3927
|
+
@binary_operator_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
3972
3928
|
end
|
3973
3929
|
|
3974
3930
|
# attr_reader value: Prism::node
|
3975
3931
|
attr_reader :value
|
3976
3932
|
|
3977
|
-
# attr_reader
|
3978
|
-
attr_reader :
|
3933
|
+
# attr_reader binary_operator: Symbol
|
3934
|
+
attr_reader :binary_operator
|
3979
3935
|
|
3980
3936
|
# def inspect -> String
|
3981
3937
|
def inspect
|
@@ -4016,9 +3972,9 @@ module Prism
|
|
4016
3972
|
other.is_a?(ClassVariableOperatorWriteNode) &&
|
4017
3973
|
(name === other.name) &&
|
4018
3974
|
(name_loc.nil? == other.name_loc.nil?) &&
|
4019
|
-
(
|
3975
|
+
(binary_operator_loc.nil? == other.binary_operator_loc.nil?) &&
|
4020
3976
|
(value === other.value) &&
|
4021
|
-
(
|
3977
|
+
(binary_operator === other.binary_operator)
|
4022
3978
|
end
|
4023
3979
|
end
|
4024
3980
|
|
@@ -4030,7 +3986,6 @@ module Prism
|
|
4030
3986
|
# def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void
|
4031
3987
|
def initialize(source, name, name_loc, operator_loc, value, location)
|
4032
3988
|
@source = source
|
4033
|
-
@newline = false
|
4034
3989
|
@location = location
|
4035
3990
|
@name = name
|
4036
3991
|
@name_loc = name_loc
|
@@ -4148,7 +4103,6 @@ module Prism
|
|
4148
4103
|
# def initialize: (Symbol name, Location location) -> void
|
4149
4104
|
def initialize(source, name, location)
|
4150
4105
|
@source = source
|
4151
|
-
@newline = false
|
4152
4106
|
@location = location
|
4153
4107
|
@name = name
|
4154
4108
|
end
|
@@ -4242,7 +4196,6 @@ module Prism
|
|
4242
4196
|
# def initialize: (Symbol name, Location location) -> void
|
4243
4197
|
def initialize(source, name, location)
|
4244
4198
|
@source = source
|
4245
|
-
@newline = false
|
4246
4199
|
@location = location
|
4247
4200
|
@name = name
|
4248
4201
|
end
|
@@ -4332,7 +4285,6 @@ module Prism
|
|
4332
4285
|
# def initialize: (Symbol name, Location name_loc, Prism::node value, Location operator_loc, Location location) -> void
|
4333
4286
|
def initialize(source, name, name_loc, value, operator_loc, location)
|
4334
4287
|
@source = source
|
4335
|
-
@newline = false
|
4336
4288
|
@location = location
|
4337
4289
|
@name = name
|
4338
4290
|
@name_loc = name_loc
|
@@ -4466,7 +4418,6 @@ module Prism
|
|
4466
4418
|
# def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void
|
4467
4419
|
def initialize(source, name, name_loc, operator_loc, value, location)
|
4468
4420
|
@source = source
|
4469
|
-
@newline = false
|
4470
4421
|
@location = location
|
4471
4422
|
@name = name
|
4472
4423
|
@name_loc = name_loc
|
@@ -4581,16 +4532,15 @@ module Prism
|
|
4581
4532
|
# Target += value
|
4582
4533
|
# ^^^^^^^^^^^^^^^
|
4583
4534
|
class ConstantOperatorWriteNode < Node
|
4584
|
-
# def initialize: (Symbol name, Location name_loc, Location
|
4585
|
-
def initialize(source, name, name_loc,
|
4535
|
+
# def initialize: (Symbol name, Location name_loc, Location binary_operator_loc, Prism::node value, Symbol binary_operator, Location location) -> void
|
4536
|
+
def initialize(source, name, name_loc, binary_operator_loc, value, binary_operator, location)
|
4586
4537
|
@source = source
|
4587
|
-
@newline = false
|
4588
4538
|
@location = location
|
4589
4539
|
@name = name
|
4590
4540
|
@name_loc = name_loc
|
4591
|
-
@
|
4541
|
+
@binary_operator_loc = binary_operator_loc
|
4592
4542
|
@value = value
|
4593
|
-
@
|
4543
|
+
@binary_operator = binary_operator
|
4594
4544
|
end
|
4595
4545
|
|
4596
4546
|
# def accept: (Visitor visitor) -> void
|
@@ -4610,20 +4560,20 @@ module Prism
|
|
4610
4560
|
|
4611
4561
|
# def comment_targets: () -> Array[Node | Location]
|
4612
4562
|
def comment_targets
|
4613
|
-
[name_loc,
|
4563
|
+
[name_loc, binary_operator_loc, value] #: Array[Prism::node | Location]
|
4614
4564
|
end
|
4615
4565
|
|
4616
|
-
# def copy: (?name: Symbol, ?name_loc: Location, ?
|
4617
|
-
def copy(name: self.name, name_loc: self.name_loc,
|
4618
|
-
ConstantOperatorWriteNode.new(source, name, name_loc,
|
4566
|
+
# def copy: (?name: Symbol, ?name_loc: Location, ?binary_operator_loc: Location, ?value: Prism::node, ?binary_operator: Symbol, ?location: Location) -> ConstantOperatorWriteNode
|
4567
|
+
def copy(name: self.name, name_loc: self.name_loc, binary_operator_loc: self.binary_operator_loc, value: self.value, binary_operator: self.binary_operator, location: self.location)
|
4568
|
+
ConstantOperatorWriteNode.new(source, name, name_loc, binary_operator_loc, value, binary_operator, location)
|
4619
4569
|
end
|
4620
4570
|
|
4621
4571
|
# def deconstruct: () -> Array[nil | Node]
|
4622
4572
|
alias deconstruct child_nodes
|
4623
4573
|
|
4624
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location,
|
4574
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, binary_operator_loc: Location, value: Prism::node, binary_operator: Symbol, location: Location }
|
4625
4575
|
def deconstruct_keys(keys)
|
4626
|
-
{ name: name, name_loc: name_loc,
|
4576
|
+
{ name: name, name_loc: name_loc, binary_operator_loc: binary_operator_loc, value: value, binary_operator: binary_operator, location: location }
|
4627
4577
|
end
|
4628
4578
|
|
4629
4579
|
# attr_reader name: Symbol
|
@@ -4636,18 +4586,18 @@ module Prism
|
|
4636
4586
|
@name_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
4637
4587
|
end
|
4638
4588
|
|
4639
|
-
# attr_reader
|
4640
|
-
def
|
4641
|
-
location = @
|
4589
|
+
# attr_reader binary_operator_loc: Location
|
4590
|
+
def binary_operator_loc
|
4591
|
+
location = @binary_operator_loc
|
4642
4592
|
return location if location.is_a?(Location)
|
4643
|
-
@
|
4593
|
+
@binary_operator_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
4644
4594
|
end
|
4645
4595
|
|
4646
4596
|
# attr_reader value: Prism::node
|
4647
4597
|
attr_reader :value
|
4648
4598
|
|
4649
|
-
# attr_reader
|
4650
|
-
attr_reader :
|
4599
|
+
# attr_reader binary_operator: Symbol
|
4600
|
+
attr_reader :binary_operator
|
4651
4601
|
|
4652
4602
|
# def inspect -> String
|
4653
4603
|
def inspect
|
@@ -4688,9 +4638,9 @@ module Prism
|
|
4688
4638
|
other.is_a?(ConstantOperatorWriteNode) &&
|
4689
4639
|
(name === other.name) &&
|
4690
4640
|
(name_loc.nil? == other.name_loc.nil?) &&
|
4691
|
-
(
|
4641
|
+
(binary_operator_loc.nil? == other.binary_operator_loc.nil?) &&
|
4692
4642
|
(value === other.value) &&
|
4693
|
-
(
|
4643
|
+
(binary_operator === other.binary_operator)
|
4694
4644
|
end
|
4695
4645
|
end
|
4696
4646
|
|
@@ -4702,7 +4652,6 @@ module Prism
|
|
4702
4652
|
# def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void
|
4703
4653
|
def initialize(source, name, name_loc, operator_loc, value, location)
|
4704
4654
|
@source = source
|
4705
|
-
@newline = false
|
4706
4655
|
@location = location
|
4707
4656
|
@name = name
|
4708
4657
|
@name_loc = name_loc
|
@@ -4820,7 +4769,6 @@ module Prism
|
|
4820
4769
|
# def initialize: (ConstantPathNode target, Location operator_loc, Prism::node value, Location location) -> void
|
4821
4770
|
def initialize(source, target, operator_loc, value, location)
|
4822
4771
|
@source = source
|
4823
|
-
@newline = false
|
4824
4772
|
@location = location
|
4825
4773
|
@target = target
|
4826
4774
|
@operator_loc = operator_loc
|
@@ -4929,7 +4877,6 @@ module Prism
|
|
4929
4877
|
# def initialize: (Prism::node? parent, Symbol? name, Location delimiter_loc, Location name_loc, Location location) -> void
|
4930
4878
|
def initialize(source, parent, name, delimiter_loc, name_loc, location)
|
4931
4879
|
@source = source
|
4932
|
-
@newline = false
|
4933
4880
|
@location = location
|
4934
4881
|
@parent = parent
|
4935
4882
|
@name = name
|
@@ -5067,15 +5014,14 @@ module Prism
|
|
5067
5014
|
# Parent::Child += value
|
5068
5015
|
# ^^^^^^^^^^^^^^^^^^^^^^
|
5069
5016
|
class ConstantPathOperatorWriteNode < Node
|
5070
|
-
# def initialize: (ConstantPathNode target, Location
|
5071
|
-
def initialize(source, target,
|
5017
|
+
# def initialize: (ConstantPathNode target, Location binary_operator_loc, Prism::node value, Symbol binary_operator, Location location) -> void
|
5018
|
+
def initialize(source, target, binary_operator_loc, value, binary_operator, location)
|
5072
5019
|
@source = source
|
5073
|
-
@newline = false
|
5074
5020
|
@location = location
|
5075
5021
|
@target = target
|
5076
|
-
@
|
5022
|
+
@binary_operator_loc = binary_operator_loc
|
5077
5023
|
@value = value
|
5078
|
-
@
|
5024
|
+
@binary_operator = binary_operator
|
5079
5025
|
end
|
5080
5026
|
|
5081
5027
|
# def accept: (Visitor visitor) -> void
|
@@ -5095,37 +5041,37 @@ module Prism
|
|
5095
5041
|
|
5096
5042
|
# def comment_targets: () -> Array[Node | Location]
|
5097
5043
|
def comment_targets
|
5098
|
-
[target,
|
5044
|
+
[target, binary_operator_loc, value] #: Array[Prism::node | Location]
|
5099
5045
|
end
|
5100
5046
|
|
5101
|
-
# def copy: (?target: ConstantPathNode, ?
|
5102
|
-
def copy(target: self.target,
|
5103
|
-
ConstantPathOperatorWriteNode.new(source, target,
|
5047
|
+
# def copy: (?target: ConstantPathNode, ?binary_operator_loc: Location, ?value: Prism::node, ?binary_operator: Symbol, ?location: Location) -> ConstantPathOperatorWriteNode
|
5048
|
+
def copy(target: self.target, binary_operator_loc: self.binary_operator_loc, value: self.value, binary_operator: self.binary_operator, location: self.location)
|
5049
|
+
ConstantPathOperatorWriteNode.new(source, target, binary_operator_loc, value, binary_operator, location)
|
5104
5050
|
end
|
5105
5051
|
|
5106
5052
|
# def deconstruct: () -> Array[nil | Node]
|
5107
5053
|
alias deconstruct child_nodes
|
5108
5054
|
|
5109
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { target: ConstantPathNode,
|
5055
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { target: ConstantPathNode, binary_operator_loc: Location, value: Prism::node, binary_operator: Symbol, location: Location }
|
5110
5056
|
def deconstruct_keys(keys)
|
5111
|
-
{ target: target,
|
5057
|
+
{ target: target, binary_operator_loc: binary_operator_loc, value: value, binary_operator: binary_operator, location: location }
|
5112
5058
|
end
|
5113
5059
|
|
5114
5060
|
# attr_reader target: ConstantPathNode
|
5115
5061
|
attr_reader :target
|
5116
5062
|
|
5117
|
-
# attr_reader
|
5118
|
-
def
|
5119
|
-
location = @
|
5063
|
+
# attr_reader binary_operator_loc: Location
|
5064
|
+
def binary_operator_loc
|
5065
|
+
location = @binary_operator_loc
|
5120
5066
|
return location if location.is_a?(Location)
|
5121
|
-
@
|
5067
|
+
@binary_operator_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
5122
5068
|
end
|
5123
5069
|
|
5124
5070
|
# attr_reader value: Prism::node
|
5125
5071
|
attr_reader :value
|
5126
5072
|
|
5127
|
-
# attr_reader
|
5128
|
-
attr_reader :
|
5073
|
+
# attr_reader binary_operator: Symbol
|
5074
|
+
attr_reader :binary_operator
|
5129
5075
|
|
5130
5076
|
# def inspect -> String
|
5131
5077
|
def inspect
|
@@ -5165,9 +5111,9 @@ module Prism
|
|
5165
5111
|
def ===(other)
|
5166
5112
|
other.is_a?(ConstantPathOperatorWriteNode) &&
|
5167
5113
|
(target === other.target) &&
|
5168
|
-
(
|
5114
|
+
(binary_operator_loc.nil? == other.binary_operator_loc.nil?) &&
|
5169
5115
|
(value === other.value) &&
|
5170
|
-
(
|
5116
|
+
(binary_operator === other.binary_operator)
|
5171
5117
|
end
|
5172
5118
|
end
|
5173
5119
|
|
@@ -5179,7 +5125,6 @@ module Prism
|
|
5179
5125
|
# def initialize: (ConstantPathNode target, Location operator_loc, Prism::node value, Location location) -> void
|
5180
5126
|
def initialize(source, target, operator_loc, value, location)
|
5181
5127
|
@source = source
|
5182
|
-
@newline = false
|
5183
5128
|
@location = location
|
5184
5129
|
@target = target
|
5185
5130
|
@operator_loc = operator_loc
|
@@ -5288,7 +5233,6 @@ module Prism
|
|
5288
5233
|
# def initialize: (Prism::node? parent, Symbol? name, Location delimiter_loc, Location name_loc, Location location) -> void
|
5289
5234
|
def initialize(source, parent, name, delimiter_loc, name_loc, location)
|
5290
5235
|
@source = source
|
5291
|
-
@newline = false
|
5292
5236
|
@location = location
|
5293
5237
|
@parent = parent
|
5294
5238
|
@name = name
|
@@ -5414,7 +5358,6 @@ module Prism
|
|
5414
5358
|
# def initialize: (ConstantPathNode target, Location operator_loc, Prism::node value, Location location) -> void
|
5415
5359
|
def initialize(source, target, operator_loc, value, location)
|
5416
5360
|
@source = source
|
5417
|
-
@newline = false
|
5418
5361
|
@location = location
|
5419
5362
|
@target = target
|
5420
5363
|
@operator_loc = operator_loc
|
@@ -5535,7 +5478,6 @@ module Prism
|
|
5535
5478
|
# def initialize: (Symbol name, Location location) -> void
|
5536
5479
|
def initialize(source, name, location)
|
5537
5480
|
@source = source
|
5538
|
-
@newline = false
|
5539
5481
|
@location = location
|
5540
5482
|
@name = name
|
5541
5483
|
end
|
@@ -5629,7 +5571,6 @@ module Prism
|
|
5629
5571
|
# def initialize: (Symbol name, Location location) -> void
|
5630
5572
|
def initialize(source, name, location)
|
5631
5573
|
@source = source
|
5632
|
-
@newline = false
|
5633
5574
|
@location = location
|
5634
5575
|
@name = name
|
5635
5576
|
end
|
@@ -5719,7 +5660,6 @@ module Prism
|
|
5719
5660
|
# def initialize: (Symbol name, Location name_loc, Prism::node value, Location operator_loc, Location location) -> void
|
5720
5661
|
def initialize(source, name, name_loc, value, operator_loc, location)
|
5721
5662
|
@source = source
|
5722
|
-
@newline = false
|
5723
5663
|
@location = location
|
5724
5664
|
@name = name
|
5725
5665
|
@name_loc = name_loc
|
@@ -5854,7 +5794,6 @@ module Prism
|
|
5854
5794
|
# 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
|
5855
5795
|
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)
|
5856
5796
|
@source = source
|
5857
|
-
@newline = false
|
5858
5797
|
@location = location
|
5859
5798
|
@name = name
|
5860
5799
|
@name_loc = name_loc
|
@@ -6092,7 +6031,6 @@ module Prism
|
|
6092
6031
|
# def initialize: (Location? lparen_loc, Prism::node value, Location? rparen_loc, Location keyword_loc, Location location) -> void
|
6093
6032
|
def initialize(source, lparen_loc, value, rparen_loc, keyword_loc, location)
|
6094
6033
|
@source = source
|
6095
|
-
@newline = false
|
6096
6034
|
@location = location
|
6097
6035
|
@lparen_loc = lparen_loc
|
6098
6036
|
@value = value
|
@@ -6236,7 +6174,6 @@ module Prism
|
|
6236
6174
|
# def initialize: (Location else_keyword_loc, StatementsNode? statements, Location? end_keyword_loc, Location location) -> void
|
6237
6175
|
def initialize(source, else_keyword_loc, statements, end_keyword_loc, location)
|
6238
6176
|
@source = source
|
6239
|
-
@newline = false
|
6240
6177
|
@location = location
|
6241
6178
|
@else_keyword_loc = else_keyword_loc
|
6242
6179
|
@statements = statements
|
@@ -6362,7 +6299,6 @@ module Prism
|
|
6362
6299
|
# def initialize: (Location opening_loc, StatementsNode? statements, Location closing_loc, Location location) -> void
|
6363
6300
|
def initialize(source, opening_loc, statements, closing_loc, location)
|
6364
6301
|
@source = source
|
6365
|
-
@newline = false
|
6366
6302
|
@location = location
|
6367
6303
|
@opening_loc = opening_loc
|
6368
6304
|
@statements = statements
|
@@ -6482,7 +6418,6 @@ module Prism
|
|
6482
6418
|
# def initialize: (Location operator_loc, Prism::node variable, Location location) -> void
|
6483
6419
|
def initialize(source, operator_loc, variable, location)
|
6484
6420
|
@source = source
|
6485
|
-
@newline = false
|
6486
6421
|
@location = location
|
6487
6422
|
@operator_loc = operator_loc
|
6488
6423
|
@variable = variable
|
@@ -6590,7 +6525,6 @@ module Prism
|
|
6590
6525
|
# def initialize: (Location ensure_keyword_loc, StatementsNode? statements, Location end_keyword_loc, Location location) -> void
|
6591
6526
|
def initialize(source, ensure_keyword_loc, statements, end_keyword_loc, location)
|
6592
6527
|
@source = source
|
6593
|
-
@newline = false
|
6594
6528
|
@location = location
|
6595
6529
|
@ensure_keyword_loc = ensure_keyword_loc
|
6596
6530
|
@statements = statements
|
@@ -6710,7 +6644,6 @@ module Prism
|
|
6710
6644
|
# def initialize: (Location location) -> void
|
6711
6645
|
def initialize(source, location)
|
6712
6646
|
@source = source
|
6713
|
-
@newline = false
|
6714
6647
|
@location = location
|
6715
6648
|
end
|
6716
6649
|
|
@@ -6801,7 +6734,6 @@ module Prism
|
|
6801
6734
|
# def initialize: (Prism::node? constant, Prism::node left, Array[Prism::node] requireds, Prism::node right, Location? opening_loc, Location? closing_loc, Location location) -> void
|
6802
6735
|
def initialize(source, constant, left, requireds, right, opening_loc, closing_loc, location)
|
6803
6736
|
@source = source
|
6804
|
-
@newline = false
|
6805
6737
|
@location = location
|
6806
6738
|
@constant = constant
|
6807
6739
|
@left = left
|
@@ -6952,7 +6884,6 @@ module Prism
|
|
6952
6884
|
# def initialize: (Integer flags, Prism::node? left, Prism::node? right, Location operator_loc, Location location) -> void
|
6953
6885
|
def initialize(source, flags, left, right, operator_loc, location)
|
6954
6886
|
@source = source
|
6955
|
-
@newline = false
|
6956
6887
|
@location = location
|
6957
6888
|
@flags = flags
|
6958
6889
|
@left = left
|
@@ -7075,7 +7006,6 @@ module Prism
|
|
7075
7006
|
# def initialize: (Float value, Location location) -> void
|
7076
7007
|
def initialize(source, value, location)
|
7077
7008
|
@source = source
|
7078
|
-
@newline = false
|
7079
7009
|
@location = location
|
7080
7010
|
@value = value
|
7081
7011
|
end
|
@@ -7165,7 +7095,6 @@ module Prism
|
|
7165
7095
|
# 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
|
7166
7096
|
def initialize(source, index, collection, statements, for_keyword_loc, in_keyword_loc, do_keyword_loc, end_keyword_loc, location)
|
7167
7097
|
@source = source
|
7168
|
-
@newline = false
|
7169
7098
|
@location = location
|
7170
7099
|
@index = index
|
7171
7100
|
@collection = collection
|
@@ -7213,30 +7142,50 @@ module Prism
|
|
7213
7142
|
{ index: index, collection: collection, statements: statements, for_keyword_loc: for_keyword_loc, in_keyword_loc: in_keyword_loc, do_keyword_loc: do_keyword_loc, end_keyword_loc: end_keyword_loc, location: location }
|
7214
7143
|
end
|
7215
7144
|
|
7216
|
-
#
|
7145
|
+
# The index expression for `for` loops.
|
7146
|
+
#
|
7147
|
+
# for i in a end
|
7148
|
+
# ^
|
7217
7149
|
attr_reader :index
|
7218
7150
|
|
7219
|
-
#
|
7151
|
+
# The collection to iterate over.
|
7152
|
+
#
|
7153
|
+
# for i in a end
|
7154
|
+
# ^
|
7220
7155
|
attr_reader :collection
|
7221
7156
|
|
7222
|
-
#
|
7157
|
+
# Represents the body of statements to execute for each iteration of the loop.
|
7158
|
+
#
|
7159
|
+
# for i in a
|
7160
|
+
# foo(i)
|
7161
|
+
# ^^^^^^
|
7162
|
+
# end
|
7223
7163
|
attr_reader :statements
|
7224
7164
|
|
7225
|
-
#
|
7165
|
+
# The location of the `for` keyword.
|
7166
|
+
#
|
7167
|
+
# for i in a end
|
7168
|
+
# ^^^
|
7226
7169
|
def for_keyword_loc
|
7227
7170
|
location = @for_keyword_loc
|
7228
7171
|
return location if location.is_a?(Location)
|
7229
7172
|
@for_keyword_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
7230
7173
|
end
|
7231
7174
|
|
7232
|
-
#
|
7175
|
+
# The location of the `in` keyword.
|
7176
|
+
#
|
7177
|
+
# for i in a end
|
7178
|
+
# ^^
|
7233
7179
|
def in_keyword_loc
|
7234
7180
|
location = @in_keyword_loc
|
7235
7181
|
return location if location.is_a?(Location)
|
7236
7182
|
@in_keyword_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
7237
7183
|
end
|
7238
7184
|
|
7239
|
-
#
|
7185
|
+
# The location of the `do` keyword, if present.
|
7186
|
+
#
|
7187
|
+
# for i in a do end
|
7188
|
+
# ^^
|
7240
7189
|
def do_keyword_loc
|
7241
7190
|
location = @do_keyword_loc
|
7242
7191
|
case location
|
@@ -7249,7 +7198,10 @@ module Prism
|
|
7249
7198
|
end
|
7250
7199
|
end
|
7251
7200
|
|
7252
|
-
#
|
7201
|
+
# The location of the `end` keyword.
|
7202
|
+
#
|
7203
|
+
# for i in a end
|
7204
|
+
# ^^^
|
7253
7205
|
def end_keyword_loc
|
7254
7206
|
location = @end_keyword_loc
|
7255
7207
|
return location if location.is_a?(Location)
|
@@ -7333,7 +7285,6 @@ module Prism
|
|
7333
7285
|
# def initialize: (Location location) -> void
|
7334
7286
|
def initialize(source, location)
|
7335
7287
|
@source = source
|
7336
|
-
@newline = false
|
7337
7288
|
@location = location
|
7338
7289
|
end
|
7339
7290
|
|
@@ -7419,7 +7370,6 @@ module Prism
|
|
7419
7370
|
# def initialize: (Location location) -> void
|
7420
7371
|
def initialize(source, location)
|
7421
7372
|
@source = source
|
7422
|
-
@newline = false
|
7423
7373
|
@location = location
|
7424
7374
|
end
|
7425
7375
|
|
@@ -7504,7 +7454,6 @@ module Prism
|
|
7504
7454
|
# def initialize: (BlockNode? block, Location location) -> void
|
7505
7455
|
def initialize(source, block, location)
|
7506
7456
|
@source = source
|
7507
|
-
@newline = false
|
7508
7457
|
@location = location
|
7509
7458
|
@block = block
|
7510
7459
|
end
|
@@ -7596,7 +7545,6 @@ module Prism
|
|
7596
7545
|
# def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void
|
7597
7546
|
def initialize(source, name, name_loc, operator_loc, value, location)
|
7598
7547
|
@source = source
|
7599
|
-
@newline = false
|
7600
7548
|
@location = location
|
7601
7549
|
@name = name
|
7602
7550
|
@name_loc = name_loc
|
@@ -7711,16 +7659,15 @@ module Prism
|
|
7711
7659
|
# $target += value
|
7712
7660
|
# ^^^^^^^^^^^^^^^^
|
7713
7661
|
class GlobalVariableOperatorWriteNode < Node
|
7714
|
-
# def initialize: (Symbol name, Location name_loc, Location
|
7715
|
-
def initialize(source, name, name_loc,
|
7662
|
+
# def initialize: (Symbol name, Location name_loc, Location binary_operator_loc, Prism::node value, Symbol binary_operator, Location location) -> void
|
7663
|
+
def initialize(source, name, name_loc, binary_operator_loc, value, binary_operator, location)
|
7716
7664
|
@source = source
|
7717
|
-
@newline = false
|
7718
7665
|
@location = location
|
7719
7666
|
@name = name
|
7720
7667
|
@name_loc = name_loc
|
7721
|
-
@
|
7668
|
+
@binary_operator_loc = binary_operator_loc
|
7722
7669
|
@value = value
|
7723
|
-
@
|
7670
|
+
@binary_operator = binary_operator
|
7724
7671
|
end
|
7725
7672
|
|
7726
7673
|
# def accept: (Visitor visitor) -> void
|
@@ -7740,20 +7687,20 @@ module Prism
|
|
7740
7687
|
|
7741
7688
|
# def comment_targets: () -> Array[Node | Location]
|
7742
7689
|
def comment_targets
|
7743
|
-
[name_loc,
|
7690
|
+
[name_loc, binary_operator_loc, value] #: Array[Prism::node | Location]
|
7744
7691
|
end
|
7745
7692
|
|
7746
|
-
# def copy: (?name: Symbol, ?name_loc: Location, ?
|
7747
|
-
def copy(name: self.name, name_loc: self.name_loc,
|
7748
|
-
GlobalVariableOperatorWriteNode.new(source, name, name_loc,
|
7693
|
+
# def copy: (?name: Symbol, ?name_loc: Location, ?binary_operator_loc: Location, ?value: Prism::node, ?binary_operator: Symbol, ?location: Location) -> GlobalVariableOperatorWriteNode
|
7694
|
+
def copy(name: self.name, name_loc: self.name_loc, binary_operator_loc: self.binary_operator_loc, value: self.value, binary_operator: self.binary_operator, location: self.location)
|
7695
|
+
GlobalVariableOperatorWriteNode.new(source, name, name_loc, binary_operator_loc, value, binary_operator, location)
|
7749
7696
|
end
|
7750
7697
|
|
7751
7698
|
# def deconstruct: () -> Array[nil | Node]
|
7752
7699
|
alias deconstruct child_nodes
|
7753
7700
|
|
7754
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location,
|
7701
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, binary_operator_loc: Location, value: Prism::node, binary_operator: Symbol, location: Location }
|
7755
7702
|
def deconstruct_keys(keys)
|
7756
|
-
{ name: name, name_loc: name_loc,
|
7703
|
+
{ name: name, name_loc: name_loc, binary_operator_loc: binary_operator_loc, value: value, binary_operator: binary_operator, location: location }
|
7757
7704
|
end
|
7758
7705
|
|
7759
7706
|
# attr_reader name: Symbol
|
@@ -7766,18 +7713,18 @@ module Prism
|
|
7766
7713
|
@name_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
7767
7714
|
end
|
7768
7715
|
|
7769
|
-
# attr_reader
|
7770
|
-
def
|
7771
|
-
location = @
|
7716
|
+
# attr_reader binary_operator_loc: Location
|
7717
|
+
def binary_operator_loc
|
7718
|
+
location = @binary_operator_loc
|
7772
7719
|
return location if location.is_a?(Location)
|
7773
|
-
@
|
7720
|
+
@binary_operator_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
7774
7721
|
end
|
7775
7722
|
|
7776
7723
|
# attr_reader value: Prism::node
|
7777
7724
|
attr_reader :value
|
7778
7725
|
|
7779
|
-
# attr_reader
|
7780
|
-
attr_reader :
|
7726
|
+
# attr_reader binary_operator: Symbol
|
7727
|
+
attr_reader :binary_operator
|
7781
7728
|
|
7782
7729
|
# def inspect -> String
|
7783
7730
|
def inspect
|
@@ -7818,9 +7765,9 @@ module Prism
|
|
7818
7765
|
other.is_a?(GlobalVariableOperatorWriteNode) &&
|
7819
7766
|
(name === other.name) &&
|
7820
7767
|
(name_loc.nil? == other.name_loc.nil?) &&
|
7821
|
-
(
|
7768
|
+
(binary_operator_loc.nil? == other.binary_operator_loc.nil?) &&
|
7822
7769
|
(value === other.value) &&
|
7823
|
-
(
|
7770
|
+
(binary_operator === other.binary_operator)
|
7824
7771
|
end
|
7825
7772
|
end
|
7826
7773
|
|
@@ -7832,7 +7779,6 @@ module Prism
|
|
7832
7779
|
# def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void
|
7833
7780
|
def initialize(source, name, name_loc, operator_loc, value, location)
|
7834
7781
|
@source = source
|
7835
|
-
@newline = false
|
7836
7782
|
@location = location
|
7837
7783
|
@name = name
|
7838
7784
|
@name_loc = name_loc
|
@@ -7950,7 +7896,6 @@ module Prism
|
|
7950
7896
|
# def initialize: (Symbol name, Location location) -> void
|
7951
7897
|
def initialize(source, name, location)
|
7952
7898
|
@source = source
|
7953
|
-
@newline = false
|
7954
7899
|
@location = location
|
7955
7900
|
@name = name
|
7956
7901
|
end
|
@@ -8044,7 +7989,6 @@ module Prism
|
|
8044
7989
|
# def initialize: (Symbol name, Location location) -> void
|
8045
7990
|
def initialize(source, name, location)
|
8046
7991
|
@source = source
|
8047
|
-
@newline = false
|
8048
7992
|
@location = location
|
8049
7993
|
@name = name
|
8050
7994
|
end
|
@@ -8134,7 +8078,6 @@ module Prism
|
|
8134
8078
|
# def initialize: (Symbol name, Location name_loc, Prism::node value, Location operator_loc, Location location) -> void
|
8135
8079
|
def initialize(source, name, name_loc, value, operator_loc, location)
|
8136
8080
|
@source = source
|
8137
|
-
@newline = false
|
8138
8081
|
@location = location
|
8139
8082
|
@name = name
|
8140
8083
|
@name_loc = name_loc
|
@@ -8268,7 +8211,6 @@ module Prism
|
|
8268
8211
|
# def initialize: (Location opening_loc, Array[AssocNode | AssocSplatNode] elements, Location closing_loc, Location location) -> void
|
8269
8212
|
def initialize(source, opening_loc, elements, closing_loc, location)
|
8270
8213
|
@source = source
|
8271
|
-
@newline = false
|
8272
8214
|
@location = location
|
8273
8215
|
@opening_loc = opening_loc
|
8274
8216
|
@elements = elements
|
@@ -8402,7 +8344,6 @@ module Prism
|
|
8402
8344
|
# def initialize: (Prism::node? constant, Array[AssocNode] elements, AssocSplatNode | NoKeywordsParameterNode | nil rest, Location? opening_loc, Location? closing_loc, Location location) -> void
|
8403
8345
|
def initialize(source, constant, elements, rest, opening_loc, closing_loc, location)
|
8404
8346
|
@source = source
|
8405
|
-
@newline = false
|
8406
8347
|
@location = location
|
8407
8348
|
@constant = constant
|
8408
8349
|
@elements = elements
|
@@ -8553,7 +8494,6 @@ module Prism
|
|
8553
8494
|
# 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
|
8554
8495
|
def initialize(source, if_keyword_loc, predicate, then_keyword_loc, statements, consequent, end_keyword_loc, location)
|
8555
8496
|
@source = source
|
8556
|
-
@newline = false
|
8557
8497
|
@location = location
|
8558
8498
|
@if_keyword_loc = if_keyword_loc
|
8559
8499
|
@predicate = predicate
|
@@ -8568,10 +8508,6 @@ module Prism
|
|
8568
8508
|
visitor.visit_if_node(self)
|
8569
8509
|
end
|
8570
8510
|
|
8571
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
8572
|
-
predicate.set_newline_flag(newline_marked)
|
8573
|
-
end
|
8574
|
-
|
8575
8511
|
# def child_nodes: () -> Array[nil | Node]
|
8576
8512
|
def child_nodes
|
8577
8513
|
[predicate, statements, consequent]
|
@@ -8767,7 +8703,6 @@ module Prism
|
|
8767
8703
|
# def initialize: (FloatNode | IntegerNode | RationalNode numeric, Location location) -> void
|
8768
8704
|
def initialize(source, numeric, location)
|
8769
8705
|
@source = source
|
8770
|
-
@newline = false
|
8771
8706
|
@location = location
|
8772
8707
|
@numeric = numeric
|
8773
8708
|
end
|
@@ -8863,7 +8798,6 @@ module Prism
|
|
8863
8798
|
# def initialize: (Prism::node value, Location location) -> void
|
8864
8799
|
def initialize(source, value, location)
|
8865
8800
|
@source = source
|
8866
|
-
@newline = false
|
8867
8801
|
@location = location
|
8868
8802
|
@value = value
|
8869
8803
|
end
|
@@ -8962,7 +8896,6 @@ module Prism
|
|
8962
8896
|
# def initialize: (Location location) -> void
|
8963
8897
|
def initialize(source, location)
|
8964
8898
|
@source = source
|
8965
|
-
@newline = false
|
8966
8899
|
@location = location
|
8967
8900
|
end
|
8968
8901
|
|
@@ -9047,7 +8980,6 @@ module Prism
|
|
9047
8980
|
# def initialize: (Prism::node pattern, StatementsNode? statements, Location in_loc, Location? then_loc, Location location) -> void
|
9048
8981
|
def initialize(source, pattern, statements, in_loc, then_loc, location)
|
9049
8982
|
@source = source
|
9050
|
-
@newline = false
|
9051
8983
|
@location = location
|
9052
8984
|
@pattern = pattern
|
9053
8985
|
@statements = statements
|
@@ -9179,7 +9111,6 @@ module Prism
|
|
9179
9111
|
# 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
|
9180
9112
|
def initialize(source, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value, location)
|
9181
9113
|
@source = source
|
9182
|
-
@newline = false
|
9183
9114
|
@location = location
|
9184
9115
|
@flags = flags
|
9185
9116
|
@receiver = receiver
|
@@ -9374,10 +9305,9 @@ module Prism
|
|
9374
9305
|
# foo.bar[baz] += value
|
9375
9306
|
# ^^^^^^^^^^^^^^^^^^^^^
|
9376
9307
|
class IndexOperatorWriteNode < Node
|
9377
|
-
# def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Prism::node? block, Symbol
|
9378
|
-
def initialize(source, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block,
|
9308
|
+
# def initialize: (Integer flags, Prism::node? receiver, Location? call_operator_loc, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Prism::node? block, Symbol binary_operator, Location binary_operator_loc, Prism::node value, Location location) -> void
|
9309
|
+
def initialize(source, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, binary_operator, binary_operator_loc, value, location)
|
9379
9310
|
@source = source
|
9380
|
-
@newline = false
|
9381
9311
|
@location = location
|
9382
9312
|
@flags = flags
|
9383
9313
|
@receiver = receiver
|
@@ -9386,8 +9316,8 @@ module Prism
|
|
9386
9316
|
@arguments = arguments
|
9387
9317
|
@closing_loc = closing_loc
|
9388
9318
|
@block = block
|
9389
|
-
@
|
9390
|
-
@
|
9319
|
+
@binary_operator = binary_operator
|
9320
|
+
@binary_operator_loc = binary_operator_loc
|
9391
9321
|
@value = value
|
9392
9322
|
end
|
9393
9323
|
|
@@ -9413,20 +9343,20 @@ module Prism
|
|
9413
9343
|
|
9414
9344
|
# def comment_targets: () -> Array[Node | Location]
|
9415
9345
|
def comment_targets
|
9416
|
-
[*receiver, *call_operator_loc, opening_loc, *arguments, closing_loc, *block,
|
9346
|
+
[*receiver, *call_operator_loc, opening_loc, *arguments, closing_loc, *block, binary_operator_loc, value] #: Array[Prism::node | Location]
|
9417
9347
|
end
|
9418
9348
|
|
9419
|
-
# def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: Prism::node?, ?
|
9420
|
-
def copy(flags: self.flags, receiver: self.receiver, call_operator_loc: self.call_operator_loc, opening_loc: self.opening_loc, arguments: self.arguments, closing_loc: self.closing_loc, block: self.block,
|
9421
|
-
IndexOperatorWriteNode.new(source, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block,
|
9349
|
+
# def copy: (?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: Prism::node?, ?binary_operator: Symbol, ?binary_operator_loc: Location, ?value: Prism::node, ?location: Location) -> IndexOperatorWriteNode
|
9350
|
+
def copy(flags: self.flags, receiver: self.receiver, call_operator_loc: self.call_operator_loc, opening_loc: self.opening_loc, arguments: self.arguments, closing_loc: self.closing_loc, block: self.block, binary_operator: self.binary_operator, binary_operator_loc: self.binary_operator_loc, value: self.value, location: self.location)
|
9351
|
+
IndexOperatorWriteNode.new(source, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, binary_operator, binary_operator_loc, value, location)
|
9422
9352
|
end
|
9423
9353
|
|
9424
9354
|
# def deconstruct: () -> Array[nil | Node]
|
9425
9355
|
alias deconstruct child_nodes
|
9426
9356
|
|
9427
|
-
# 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?,
|
9357
|
+
# 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?, binary_operator: Symbol, binary_operator_loc: Location, value: Prism::node, location: Location }
|
9428
9358
|
def deconstruct_keys(keys)
|
9429
|
-
{ flags: flags, receiver: receiver, call_operator_loc: call_operator_loc, opening_loc: opening_loc, arguments: arguments, closing_loc: closing_loc, block: block,
|
9359
|
+
{ flags: flags, receiver: receiver, call_operator_loc: call_operator_loc, opening_loc: opening_loc, arguments: arguments, closing_loc: closing_loc, block: block, binary_operator: binary_operator, binary_operator_loc: binary_operator_loc, value: value, location: location }
|
9430
9360
|
end
|
9431
9361
|
|
9432
9362
|
# protected attr_reader flags: Integer
|
@@ -9469,14 +9399,14 @@ module Prism
|
|
9469
9399
|
# attr_reader block: Prism::node?
|
9470
9400
|
attr_reader :block
|
9471
9401
|
|
9472
|
-
# attr_reader
|
9473
|
-
attr_reader :
|
9402
|
+
# attr_reader binary_operator: Symbol
|
9403
|
+
attr_reader :binary_operator
|
9474
9404
|
|
9475
|
-
# attr_reader
|
9476
|
-
def
|
9477
|
-
location = @
|
9405
|
+
# attr_reader binary_operator_loc: Location
|
9406
|
+
def binary_operator_loc
|
9407
|
+
location = @binary_operator_loc
|
9478
9408
|
return location if location.is_a?(Location)
|
9479
|
-
@
|
9409
|
+
@binary_operator_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
9480
9410
|
end
|
9481
9411
|
|
9482
9412
|
# attr_reader value: Prism::node
|
@@ -9561,8 +9491,8 @@ module Prism
|
|
9561
9491
|
(arguments === other.arguments) &&
|
9562
9492
|
(closing_loc.nil? == other.closing_loc.nil?) &&
|
9563
9493
|
(block === other.block) &&
|
9564
|
-
(
|
9565
|
-
(
|
9494
|
+
(binary_operator === other.binary_operator) &&
|
9495
|
+
(binary_operator_loc.nil? == other.binary_operator_loc.nil?) &&
|
9566
9496
|
(value === other.value)
|
9567
9497
|
end
|
9568
9498
|
end
|
@@ -9575,7 +9505,6 @@ module Prism
|
|
9575
9505
|
# 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
|
9576
9506
|
def initialize(source, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value, location)
|
9577
9507
|
@source = source
|
9578
|
-
@newline = false
|
9579
9508
|
@location = location
|
9580
9509
|
@flags = flags
|
9581
9510
|
@receiver = receiver
|
@@ -9781,7 +9710,6 @@ module Prism
|
|
9781
9710
|
# def initialize: (Integer flags, Prism::node receiver, Location opening_loc, ArgumentsNode? arguments, Location closing_loc, Prism::node? block, Location location) -> void
|
9782
9711
|
def initialize(source, flags, receiver, opening_loc, arguments, closing_loc, block, location)
|
9783
9712
|
@source = source
|
9784
|
-
@newline = false
|
9785
9713
|
@location = location
|
9786
9714
|
@flags = flags
|
9787
9715
|
@receiver = receiver
|
@@ -9939,7 +9867,6 @@ module Prism
|
|
9939
9867
|
# def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void
|
9940
9868
|
def initialize(source, name, name_loc, operator_loc, value, location)
|
9941
9869
|
@source = source
|
9942
|
-
@newline = false
|
9943
9870
|
@location = location
|
9944
9871
|
@name = name
|
9945
9872
|
@name_loc = name_loc
|
@@ -10054,16 +9981,15 @@ module Prism
|
|
10054
9981
|
# @target += value
|
10055
9982
|
# ^^^^^^^^^^^^^^^^
|
10056
9983
|
class InstanceVariableOperatorWriteNode < Node
|
10057
|
-
# def initialize: (Symbol name, Location name_loc, Location
|
10058
|
-
def initialize(source, name, name_loc,
|
9984
|
+
# def initialize: (Symbol name, Location name_loc, Location binary_operator_loc, Prism::node value, Symbol binary_operator, Location location) -> void
|
9985
|
+
def initialize(source, name, name_loc, binary_operator_loc, value, binary_operator, location)
|
10059
9986
|
@source = source
|
10060
|
-
@newline = false
|
10061
9987
|
@location = location
|
10062
9988
|
@name = name
|
10063
9989
|
@name_loc = name_loc
|
10064
|
-
@
|
9990
|
+
@binary_operator_loc = binary_operator_loc
|
10065
9991
|
@value = value
|
10066
|
-
@
|
9992
|
+
@binary_operator = binary_operator
|
10067
9993
|
end
|
10068
9994
|
|
10069
9995
|
# def accept: (Visitor visitor) -> void
|
@@ -10083,20 +10009,20 @@ module Prism
|
|
10083
10009
|
|
10084
10010
|
# def comment_targets: () -> Array[Node | Location]
|
10085
10011
|
def comment_targets
|
10086
|
-
[name_loc,
|
10012
|
+
[name_loc, binary_operator_loc, value] #: Array[Prism::node | Location]
|
10087
10013
|
end
|
10088
10014
|
|
10089
|
-
# def copy: (?name: Symbol, ?name_loc: Location, ?
|
10090
|
-
def copy(name: self.name, name_loc: self.name_loc,
|
10091
|
-
InstanceVariableOperatorWriteNode.new(source, name, name_loc,
|
10015
|
+
# def copy: (?name: Symbol, ?name_loc: Location, ?binary_operator_loc: Location, ?value: Prism::node, ?binary_operator: Symbol, ?location: Location) -> InstanceVariableOperatorWriteNode
|
10016
|
+
def copy(name: self.name, name_loc: self.name_loc, binary_operator_loc: self.binary_operator_loc, value: self.value, binary_operator: self.binary_operator, location: self.location)
|
10017
|
+
InstanceVariableOperatorWriteNode.new(source, name, name_loc, binary_operator_loc, value, binary_operator, location)
|
10092
10018
|
end
|
10093
10019
|
|
10094
10020
|
# def deconstruct: () -> Array[nil | Node]
|
10095
10021
|
alias deconstruct child_nodes
|
10096
10022
|
|
10097
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location,
|
10023
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { name: Symbol, name_loc: Location, binary_operator_loc: Location, value: Prism::node, binary_operator: Symbol, location: Location }
|
10098
10024
|
def deconstruct_keys(keys)
|
10099
|
-
{ name: name, name_loc: name_loc,
|
10025
|
+
{ name: name, name_loc: name_loc, binary_operator_loc: binary_operator_loc, value: value, binary_operator: binary_operator, location: location }
|
10100
10026
|
end
|
10101
10027
|
|
10102
10028
|
# attr_reader name: Symbol
|
@@ -10109,18 +10035,18 @@ module Prism
|
|
10109
10035
|
@name_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
10110
10036
|
end
|
10111
10037
|
|
10112
|
-
# attr_reader
|
10113
|
-
def
|
10114
|
-
location = @
|
10038
|
+
# attr_reader binary_operator_loc: Location
|
10039
|
+
def binary_operator_loc
|
10040
|
+
location = @binary_operator_loc
|
10115
10041
|
return location if location.is_a?(Location)
|
10116
|
-
@
|
10042
|
+
@binary_operator_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
10117
10043
|
end
|
10118
10044
|
|
10119
10045
|
# attr_reader value: Prism::node
|
10120
10046
|
attr_reader :value
|
10121
10047
|
|
10122
|
-
# attr_reader
|
10123
|
-
attr_reader :
|
10048
|
+
# attr_reader binary_operator: Symbol
|
10049
|
+
attr_reader :binary_operator
|
10124
10050
|
|
10125
10051
|
# def inspect -> String
|
10126
10052
|
def inspect
|
@@ -10161,9 +10087,9 @@ module Prism
|
|
10161
10087
|
other.is_a?(InstanceVariableOperatorWriteNode) &&
|
10162
10088
|
(name === other.name) &&
|
10163
10089
|
(name_loc.nil? == other.name_loc.nil?) &&
|
10164
|
-
(
|
10090
|
+
(binary_operator_loc.nil? == other.binary_operator_loc.nil?) &&
|
10165
10091
|
(value === other.value) &&
|
10166
|
-
(
|
10092
|
+
(binary_operator === other.binary_operator)
|
10167
10093
|
end
|
10168
10094
|
end
|
10169
10095
|
|
@@ -10175,7 +10101,6 @@ module Prism
|
|
10175
10101
|
# def initialize: (Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void
|
10176
10102
|
def initialize(source, name, name_loc, operator_loc, value, location)
|
10177
10103
|
@source = source
|
10178
|
-
@newline = false
|
10179
10104
|
@location = location
|
10180
10105
|
@name = name
|
10181
10106
|
@name_loc = name_loc
|
@@ -10293,7 +10218,6 @@ module Prism
|
|
10293
10218
|
# def initialize: (Symbol name, Location location) -> void
|
10294
10219
|
def initialize(source, name, location)
|
10295
10220
|
@source = source
|
10296
|
-
@newline = false
|
10297
10221
|
@location = location
|
10298
10222
|
@name = name
|
10299
10223
|
end
|
@@ -10387,7 +10311,6 @@ module Prism
|
|
10387
10311
|
# def initialize: (Symbol name, Location location) -> void
|
10388
10312
|
def initialize(source, name, location)
|
10389
10313
|
@source = source
|
10390
|
-
@newline = false
|
10391
10314
|
@location = location
|
10392
10315
|
@name = name
|
10393
10316
|
end
|
@@ -10477,7 +10400,6 @@ module Prism
|
|
10477
10400
|
# def initialize: (Symbol name, Location name_loc, Prism::node value, Location operator_loc, Location location) -> void
|
10478
10401
|
def initialize(source, name, name_loc, value, operator_loc, location)
|
10479
10402
|
@source = source
|
10480
|
-
@newline = false
|
10481
10403
|
@location = location
|
10482
10404
|
@name = name
|
10483
10405
|
@name_loc = name_loc
|
@@ -10611,7 +10533,6 @@ module Prism
|
|
10611
10533
|
# def initialize: (Integer flags, Integer value, Location location) -> void
|
10612
10534
|
def initialize(source, flags, value, location)
|
10613
10535
|
@source = source
|
10614
|
-
@newline = false
|
10615
10536
|
@location = location
|
10616
10537
|
@flags = flags
|
10617
10538
|
@value = value
|
@@ -10727,7 +10648,6 @@ module Prism
|
|
10727
10648
|
# def initialize: (Integer flags, Location opening_loc, Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] parts, Location closing_loc, Location location) -> void
|
10728
10649
|
def initialize(source, flags, opening_loc, parts, closing_loc, location)
|
10729
10650
|
@source = source
|
10730
|
-
@newline = false
|
10731
10651
|
@location = location
|
10732
10652
|
@flags = flags
|
10733
10653
|
@opening_loc = opening_loc
|
@@ -10740,11 +10660,6 @@ module Prism
|
|
10740
10660
|
visitor.visit_interpolated_match_last_line_node(self)
|
10741
10661
|
end
|
10742
10662
|
|
10743
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
10744
|
-
first = parts.first
|
10745
|
-
first.set_newline_flag(newline_marked) if first
|
10746
|
-
end
|
10747
|
-
|
10748
10663
|
# def child_nodes: () -> Array[nil | Node]
|
10749
10664
|
def child_nodes
|
10750
10665
|
[*parts]
|
@@ -10912,7 +10827,6 @@ module Prism
|
|
10912
10827
|
# def initialize: (Integer flags, Location opening_loc, Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] parts, Location closing_loc, Location location) -> void
|
10913
10828
|
def initialize(source, flags, opening_loc, parts, closing_loc, location)
|
10914
10829
|
@source = source
|
10915
|
-
@newline = false
|
10916
10830
|
@location = location
|
10917
10831
|
@flags = flags
|
10918
10832
|
@opening_loc = opening_loc
|
@@ -10925,11 +10839,6 @@ module Prism
|
|
10925
10839
|
visitor.visit_interpolated_regular_expression_node(self)
|
10926
10840
|
end
|
10927
10841
|
|
10928
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
10929
|
-
first = parts.first
|
10930
|
-
first.set_newline_flag(newline_marked) if first
|
10931
|
-
end
|
10932
|
-
|
10933
10842
|
# def child_nodes: () -> Array[nil | Node]
|
10934
10843
|
def child_nodes
|
10935
10844
|
[*parts]
|
@@ -11097,7 +11006,6 @@ module Prism
|
|
11097
11006
|
# def initialize: (Integer flags, Location? opening_loc, Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode | InterpolatedStringNode] parts, Location? closing_loc, Location location) -> void
|
11098
11007
|
def initialize(source, flags, opening_loc, parts, closing_loc, location)
|
11099
11008
|
@source = source
|
11100
|
-
@newline = false
|
11101
11009
|
@location = location
|
11102
11010
|
@flags = flags
|
11103
11011
|
@opening_loc = opening_loc
|
@@ -11110,11 +11018,6 @@ module Prism
|
|
11110
11018
|
visitor.visit_interpolated_string_node(self)
|
11111
11019
|
end
|
11112
11020
|
|
11113
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
11114
|
-
first = parts.first
|
11115
|
-
first.set_newline_flag(newline_marked) if first
|
11116
|
-
end
|
11117
|
-
|
11118
11021
|
# def child_nodes: () -> Array[nil | Node]
|
11119
11022
|
def child_nodes
|
11120
11023
|
[*parts]
|
@@ -11249,7 +11152,6 @@ module Prism
|
|
11249
11152
|
# def initialize: (Location? opening_loc, Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] parts, Location? closing_loc, Location location) -> void
|
11250
11153
|
def initialize(source, opening_loc, parts, closing_loc, location)
|
11251
11154
|
@source = source
|
11252
|
-
@newline = false
|
11253
11155
|
@location = location
|
11254
11156
|
@opening_loc = opening_loc
|
11255
11157
|
@parts = parts
|
@@ -11261,11 +11163,6 @@ module Prism
|
|
11261
11163
|
visitor.visit_interpolated_symbol_node(self)
|
11262
11164
|
end
|
11263
11165
|
|
11264
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
11265
|
-
first = parts.first
|
11266
|
-
first.set_newline_flag(newline_marked) if first
|
11267
|
-
end
|
11268
|
-
|
11269
11166
|
# def child_nodes: () -> Array[nil | Node]
|
11270
11167
|
def child_nodes
|
11271
11168
|
[*parts]
|
@@ -11385,7 +11282,6 @@ module Prism
|
|
11385
11282
|
# def initialize: (Location opening_loc, Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode] parts, Location closing_loc, Location location) -> void
|
11386
11283
|
def initialize(source, opening_loc, parts, closing_loc, location)
|
11387
11284
|
@source = source
|
11388
|
-
@newline = false
|
11389
11285
|
@location = location
|
11390
11286
|
@opening_loc = opening_loc
|
11391
11287
|
@parts = parts
|
@@ -11397,11 +11293,6 @@ module Prism
|
|
11397
11293
|
visitor.visit_interpolated_x_string_node(self)
|
11398
11294
|
end
|
11399
11295
|
|
11400
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
11401
|
-
first = parts.first
|
11402
|
-
first.set_newline_flag(newline_marked) if first
|
11403
|
-
end
|
11404
|
-
|
11405
11296
|
# def child_nodes: () -> Array[nil | Node]
|
11406
11297
|
def child_nodes
|
11407
11298
|
[*parts]
|
@@ -11501,6 +11392,90 @@ module Prism
|
|
11501
11392
|
end
|
11502
11393
|
end
|
11503
11394
|
|
11395
|
+
# Represents reading from the implicit `it` local variable.
|
11396
|
+
#
|
11397
|
+
# -> { it }
|
11398
|
+
# ^^
|
11399
|
+
class ItLocalVariableReadNode < Node
|
11400
|
+
# def initialize: (Location location) -> void
|
11401
|
+
def initialize(source, location)
|
11402
|
+
@source = source
|
11403
|
+
@location = location
|
11404
|
+
end
|
11405
|
+
|
11406
|
+
# def accept: (Visitor visitor) -> void
|
11407
|
+
def accept(visitor)
|
11408
|
+
visitor.visit_it_local_variable_read_node(self)
|
11409
|
+
end
|
11410
|
+
|
11411
|
+
# def child_nodes: () -> Array[nil | Node]
|
11412
|
+
def child_nodes
|
11413
|
+
[]
|
11414
|
+
end
|
11415
|
+
|
11416
|
+
# def compact_child_nodes: () -> Array[Node]
|
11417
|
+
def compact_child_nodes
|
11418
|
+
[]
|
11419
|
+
end
|
11420
|
+
|
11421
|
+
# def comment_targets: () -> Array[Node | Location]
|
11422
|
+
def comment_targets
|
11423
|
+
[] #: Array[Prism::node | Location]
|
11424
|
+
end
|
11425
|
+
|
11426
|
+
# def copy: (?location: Location) -> ItLocalVariableReadNode
|
11427
|
+
def copy(location: self.location)
|
11428
|
+
ItLocalVariableReadNode.new(source, location)
|
11429
|
+
end
|
11430
|
+
|
11431
|
+
# def deconstruct: () -> Array[nil | Node]
|
11432
|
+
alias deconstruct child_nodes
|
11433
|
+
|
11434
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { location: Location }
|
11435
|
+
def deconstruct_keys(keys)
|
11436
|
+
{ location: location }
|
11437
|
+
end
|
11438
|
+
|
11439
|
+
# def inspect -> String
|
11440
|
+
def inspect
|
11441
|
+
InspectVisitor.compose(self)
|
11442
|
+
end
|
11443
|
+
|
11444
|
+
# Sometimes you want to check an instance of a node against a list of
|
11445
|
+
# classes to see what kind of behavior to perform. Usually this is done by
|
11446
|
+
# calling `[cls1, cls2].include?(node.class)` or putting the node into a
|
11447
|
+
# case statement and doing `case node; when cls1; when cls2; end`. Both of
|
11448
|
+
# these approaches are relatively slow because of the constant lookups,
|
11449
|
+
# method calls, and/or array allocations.
|
11450
|
+
#
|
11451
|
+
# Instead, you can call #type, which will return to you a symbol that you
|
11452
|
+
# can use for comparison. This is faster than the other approaches because
|
11453
|
+
# it uses a single integer comparison, but also because if you're on CRuby
|
11454
|
+
# you can take advantage of the fact that case statements with all symbol
|
11455
|
+
# keys will use a jump table.
|
11456
|
+
#
|
11457
|
+
# def type: () -> Symbol
|
11458
|
+
def type
|
11459
|
+
:it_local_variable_read_node
|
11460
|
+
end
|
11461
|
+
|
11462
|
+
# Similar to #type, this method returns a symbol that you can use for
|
11463
|
+
# splitting on the type of the node without having to do a long === chain.
|
11464
|
+
# Note that like #type, it will still be slower than using == for a single
|
11465
|
+
# class, but should be faster in a case statement or an array comparison.
|
11466
|
+
#
|
11467
|
+
# def self.type: () -> Symbol
|
11468
|
+
def self.type
|
11469
|
+
:it_local_variable_read_node
|
11470
|
+
end
|
11471
|
+
|
11472
|
+
# Implements case-equality for the node. This is effectively == but without
|
11473
|
+
# comparing the value of locations. Locations are checked only for presence.
|
11474
|
+
def ===(other)
|
11475
|
+
other.is_a?(ItLocalVariableReadNode)
|
11476
|
+
end
|
11477
|
+
end
|
11478
|
+
|
11504
11479
|
# Represents an implicit set of parameters through the use of the `it` keyword within a block or lambda.
|
11505
11480
|
#
|
11506
11481
|
# -> { it + it }
|
@@ -11509,7 +11484,6 @@ module Prism
|
|
11509
11484
|
# def initialize: (Location location) -> void
|
11510
11485
|
def initialize(source, location)
|
11511
11486
|
@source = source
|
11512
|
-
@newline = false
|
11513
11487
|
@location = location
|
11514
11488
|
end
|
11515
11489
|
|
@@ -11594,7 +11568,6 @@ module Prism
|
|
11594
11568
|
# def initialize: (Integer flags, Array[AssocNode | AssocSplatNode] elements, Location location) -> void
|
11595
11569
|
def initialize(source, flags, elements, location)
|
11596
11570
|
@source = source
|
11597
|
-
@newline = false
|
11598
11571
|
@location = location
|
11599
11572
|
@flags = flags
|
11600
11573
|
@elements = elements
|
@@ -11697,7 +11670,6 @@ module Prism
|
|
11697
11670
|
# def initialize: (Integer flags, Symbol? name, Location? name_loc, Location operator_loc, Location location) -> void
|
11698
11671
|
def initialize(source, flags, name, name_loc, operator_loc, location)
|
11699
11672
|
@source = source
|
11700
|
-
@newline = false
|
11701
11673
|
@location = location
|
11702
11674
|
@flags = flags
|
11703
11675
|
@name = name
|
@@ -11827,7 +11799,6 @@ module Prism
|
|
11827
11799
|
# def initialize: (Array[Symbol] locals, Location operator_loc, Location opening_loc, Location closing_loc, Prism::node? parameters, Prism::node? body, Location location) -> void
|
11828
11800
|
def initialize(source, locals, operator_loc, opening_loc, closing_loc, parameters, body, location)
|
11829
11801
|
@source = source
|
11830
|
-
@newline = false
|
11831
11802
|
@location = location
|
11832
11803
|
@locals = locals
|
11833
11804
|
@operator_loc = operator_loc
|
@@ -11973,7 +11944,6 @@ module Prism
|
|
11973
11944
|
# def initialize: (Location name_loc, Location operator_loc, Prism::node value, Symbol name, Integer depth, Location location) -> void
|
11974
11945
|
def initialize(source, name_loc, operator_loc, value, name, depth, location)
|
11975
11946
|
@source = source
|
11976
|
-
@newline = false
|
11977
11947
|
@location = location
|
11978
11948
|
@name_loc = name_loc
|
11979
11949
|
@operator_loc = operator_loc
|
@@ -12093,16 +12063,15 @@ module Prism
|
|
12093
12063
|
# target += value
|
12094
12064
|
# ^^^^^^^^^^^^^^^
|
12095
12065
|
class LocalVariableOperatorWriteNode < Node
|
12096
|
-
# def initialize: (Location name_loc, Location
|
12097
|
-
def initialize(source, name_loc,
|
12066
|
+
# def initialize: (Location name_loc, Location binary_operator_loc, Prism::node value, Symbol name, Symbol binary_operator, Integer depth, Location location) -> void
|
12067
|
+
def initialize(source, name_loc, binary_operator_loc, value, name, binary_operator, depth, location)
|
12098
12068
|
@source = source
|
12099
|
-
@newline = false
|
12100
12069
|
@location = location
|
12101
12070
|
@name_loc = name_loc
|
12102
|
-
@
|
12071
|
+
@binary_operator_loc = binary_operator_loc
|
12103
12072
|
@value = value
|
12104
12073
|
@name = name
|
12105
|
-
@
|
12074
|
+
@binary_operator = binary_operator
|
12106
12075
|
@depth = depth
|
12107
12076
|
end
|
12108
12077
|
|
@@ -12123,20 +12092,20 @@ module Prism
|
|
12123
12092
|
|
12124
12093
|
# def comment_targets: () -> Array[Node | Location]
|
12125
12094
|
def comment_targets
|
12126
|
-
[name_loc,
|
12095
|
+
[name_loc, binary_operator_loc, value] #: Array[Prism::node | Location]
|
12127
12096
|
end
|
12128
12097
|
|
12129
|
-
# def copy: (?name_loc: Location, ?
|
12130
|
-
def copy(name_loc: self.name_loc,
|
12131
|
-
LocalVariableOperatorWriteNode.new(source, name_loc,
|
12098
|
+
# def copy: (?name_loc: Location, ?binary_operator_loc: Location, ?value: Prism::node, ?name: Symbol, ?binary_operator: Symbol, ?depth: Integer, ?location: Location) -> LocalVariableOperatorWriteNode
|
12099
|
+
def copy(name_loc: self.name_loc, binary_operator_loc: self.binary_operator_loc, value: self.value, name: self.name, binary_operator: self.binary_operator, depth: self.depth, location: self.location)
|
12100
|
+
LocalVariableOperatorWriteNode.new(source, name_loc, binary_operator_loc, value, name, binary_operator, depth, location)
|
12132
12101
|
end
|
12133
12102
|
|
12134
12103
|
# def deconstruct: () -> Array[nil | Node]
|
12135
12104
|
alias deconstruct child_nodes
|
12136
12105
|
|
12137
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { name_loc: Location,
|
12106
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { name_loc: Location, binary_operator_loc: Location, value: Prism::node, name: Symbol, binary_operator: Symbol, depth: Integer, location: Location }
|
12138
12107
|
def deconstruct_keys(keys)
|
12139
|
-
{ name_loc: name_loc,
|
12108
|
+
{ name_loc: name_loc, binary_operator_loc: binary_operator_loc, value: value, name: name, binary_operator: binary_operator, depth: depth, location: location }
|
12140
12109
|
end
|
12141
12110
|
|
12142
12111
|
# attr_reader name_loc: Location
|
@@ -12146,11 +12115,11 @@ module Prism
|
|
12146
12115
|
@name_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
12147
12116
|
end
|
12148
12117
|
|
12149
|
-
# attr_reader
|
12150
|
-
def
|
12151
|
-
location = @
|
12118
|
+
# attr_reader binary_operator_loc: Location
|
12119
|
+
def binary_operator_loc
|
12120
|
+
location = @binary_operator_loc
|
12152
12121
|
return location if location.is_a?(Location)
|
12153
|
-
@
|
12122
|
+
@binary_operator_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
12154
12123
|
end
|
12155
12124
|
|
12156
12125
|
# attr_reader value: Prism::node
|
@@ -12159,8 +12128,8 @@ module Prism
|
|
12159
12128
|
# attr_reader name: Symbol
|
12160
12129
|
attr_reader :name
|
12161
12130
|
|
12162
|
-
# attr_reader
|
12163
|
-
attr_reader :
|
12131
|
+
# attr_reader binary_operator: Symbol
|
12132
|
+
attr_reader :binary_operator
|
12164
12133
|
|
12165
12134
|
# attr_reader depth: Integer
|
12166
12135
|
attr_reader :depth
|
@@ -12203,10 +12172,10 @@ module Prism
|
|
12203
12172
|
def ===(other)
|
12204
12173
|
other.is_a?(LocalVariableOperatorWriteNode) &&
|
12205
12174
|
(name_loc.nil? == other.name_loc.nil?) &&
|
12206
|
-
(
|
12175
|
+
(binary_operator_loc.nil? == other.binary_operator_loc.nil?) &&
|
12207
12176
|
(value === other.value) &&
|
12208
12177
|
(name === other.name) &&
|
12209
|
-
(
|
12178
|
+
(binary_operator === other.binary_operator) &&
|
12210
12179
|
(depth === other.depth)
|
12211
12180
|
end
|
12212
12181
|
end
|
@@ -12219,7 +12188,6 @@ module Prism
|
|
12219
12188
|
# def initialize: (Location name_loc, Location operator_loc, Prism::node value, Symbol name, Integer depth, Location location) -> void
|
12220
12189
|
def initialize(source, name_loc, operator_loc, value, name, depth, location)
|
12221
12190
|
@source = source
|
12222
|
-
@newline = false
|
12223
12191
|
@location = location
|
12224
12192
|
@name_loc = name_loc
|
12225
12193
|
@operator_loc = operator_loc
|
@@ -12342,7 +12310,6 @@ module Prism
|
|
12342
12310
|
# def initialize: (Symbol name, Integer depth, Location location) -> void
|
12343
12311
|
def initialize(source, name, depth, location)
|
12344
12312
|
@source = source
|
12345
|
-
@newline = false
|
12346
12313
|
@location = location
|
12347
12314
|
@name = name
|
12348
12315
|
@depth = depth
|
@@ -12390,10 +12357,6 @@ module Prism
|
|
12390
12357
|
# Note that this can also be an underscore followed by a number for the default block parameters.
|
12391
12358
|
#
|
12392
12359
|
# _1 # name `:_1`
|
12393
|
-
#
|
12394
|
-
# Finally, for the default `it` block parameter, the name is `0it`. This is to distinguish it from an `it` local variable that is explicitly declared.
|
12395
|
-
#
|
12396
|
-
# it # name `:0it`
|
12397
12360
|
attr_reader :name
|
12398
12361
|
|
12399
12362
|
# The number of visible scopes that should be searched to find the origin of this local variable.
|
@@ -12455,7 +12418,6 @@ module Prism
|
|
12455
12418
|
# def initialize: (Symbol name, Integer depth, Location location) -> void
|
12456
12419
|
def initialize(source, name, depth, location)
|
12457
12420
|
@source = source
|
12458
|
-
@newline = false
|
12459
12421
|
@location = location
|
12460
12422
|
@name = name
|
12461
12423
|
@depth = depth
|
@@ -12550,7 +12512,6 @@ module Prism
|
|
12550
12512
|
# def initialize: (Symbol name, Integer depth, Location name_loc, Prism::node value, Location operator_loc, Location location) -> void
|
12551
12513
|
def initialize(source, name, depth, name_loc, value, operator_loc, location)
|
12552
12514
|
@source = source
|
12553
|
-
@newline = false
|
12554
12515
|
@location = location
|
12555
12516
|
@name = name
|
12556
12517
|
@depth = depth
|
@@ -12699,7 +12660,6 @@ module Prism
|
|
12699
12660
|
# def initialize: (Integer flags, Location opening_loc, Location content_loc, Location closing_loc, String unescaped, Location location) -> void
|
12700
12661
|
def initialize(source, flags, opening_loc, content_loc, closing_loc, unescaped, location)
|
12701
12662
|
@source = source
|
12702
|
-
@newline = false
|
12703
12663
|
@location = location
|
12704
12664
|
@flags = flags
|
12705
12665
|
@opening_loc = opening_loc
|
@@ -12892,7 +12852,6 @@ module Prism
|
|
12892
12852
|
# def initialize: (Prism::node value, Prism::node pattern, Location operator_loc, Location location) -> void
|
12893
12853
|
def initialize(source, value, pattern, operator_loc, location)
|
12894
12854
|
@source = source
|
12895
|
-
@newline = false
|
12896
12855
|
@location = location
|
12897
12856
|
@value = value
|
12898
12857
|
@pattern = pattern
|
@@ -13001,7 +12960,6 @@ module Prism
|
|
13001
12960
|
# def initialize: (Prism::node value, Prism::node pattern, Location operator_loc, Location location) -> void
|
13002
12961
|
def initialize(source, value, pattern, operator_loc, location)
|
13003
12962
|
@source = source
|
13004
|
-
@newline = false
|
13005
12963
|
@location = location
|
13006
12964
|
@value = value
|
13007
12965
|
@pattern = pattern
|
@@ -13110,7 +13068,6 @@ module Prism
|
|
13110
13068
|
# def initialize: (CallNode call, Array[LocalVariableTargetNode] targets, Location location) -> void
|
13111
13069
|
def initialize(source, call, targets, location)
|
13112
13070
|
@source = source
|
13113
|
-
@newline = false
|
13114
13071
|
@location = location
|
13115
13072
|
@call = call
|
13116
13073
|
@targets = targets
|
@@ -13203,7 +13160,6 @@ module Prism
|
|
13203
13160
|
# def initialize: (Location location) -> void
|
13204
13161
|
def initialize(source, location)
|
13205
13162
|
@source = source
|
13206
|
-
@newline = false
|
13207
13163
|
@location = location
|
13208
13164
|
end
|
13209
13165
|
|
@@ -13288,7 +13244,6 @@ module Prism
|
|
13288
13244
|
# 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
|
13289
13245
|
def initialize(source, locals, module_keyword_loc, constant_path, body, end_keyword_loc, name, location)
|
13290
13246
|
@source = source
|
13291
|
-
@newline = false
|
13292
13247
|
@location = location
|
13293
13248
|
@locals = locals
|
13294
13249
|
@module_keyword_loc = module_keyword_loc
|
@@ -13425,7 +13380,6 @@ module Prism
|
|
13425
13380
|
# 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
|
13426
13381
|
def initialize(source, lefts, rest, rights, lparen_loc, rparen_loc, location)
|
13427
13382
|
@source = source
|
13428
|
-
@newline = false
|
13429
13383
|
@location = location
|
13430
13384
|
@lefts = lefts
|
13431
13385
|
@rest = rest
|
@@ -13571,7 +13525,6 @@ module Prism
|
|
13571
13525
|
# 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
|
13572
13526
|
def initialize(source, lefts, rest, rights, lparen_loc, rparen_loc, operator_loc, value, location)
|
13573
13527
|
@source = source
|
13574
|
-
@newline = false
|
13575
13528
|
@location = location
|
13576
13529
|
@lefts = lefts
|
13577
13530
|
@rest = rest
|
@@ -13737,7 +13690,6 @@ module Prism
|
|
13737
13690
|
# def initialize: (ArgumentsNode? arguments, Location keyword_loc, Location location) -> void
|
13738
13691
|
def initialize(source, arguments, keyword_loc, location)
|
13739
13692
|
@source = source
|
13740
|
-
@newline = false
|
13741
13693
|
@location = location
|
13742
13694
|
@arguments = arguments
|
13743
13695
|
@keyword_loc = keyword_loc
|
@@ -13843,7 +13795,6 @@ module Prism
|
|
13843
13795
|
# def initialize: (Location location) -> void
|
13844
13796
|
def initialize(source, location)
|
13845
13797
|
@source = source
|
13846
|
-
@newline = false
|
13847
13798
|
@location = location
|
13848
13799
|
end
|
13849
13800
|
|
@@ -13929,7 +13880,6 @@ module Prism
|
|
13929
13880
|
# def initialize: (Location operator_loc, Location keyword_loc, Location location) -> void
|
13930
13881
|
def initialize(source, operator_loc, keyword_loc, location)
|
13931
13882
|
@source = source
|
13932
|
-
@newline = false
|
13933
13883
|
@location = location
|
13934
13884
|
@operator_loc = operator_loc
|
13935
13885
|
@keyword_loc = keyword_loc
|
@@ -14042,7 +13992,6 @@ module Prism
|
|
14042
13992
|
# def initialize: (Integer maximum, Location location) -> void
|
14043
13993
|
def initialize(source, maximum, location)
|
14044
13994
|
@source = source
|
14045
|
-
@newline = false
|
14046
13995
|
@location = location
|
14047
13996
|
@maximum = maximum
|
14048
13997
|
end
|
@@ -14132,7 +14081,6 @@ module Prism
|
|
14132
14081
|
# def initialize: (Integer number, Location location) -> void
|
14133
14082
|
def initialize(source, number, location)
|
14134
14083
|
@source = source
|
14135
|
-
@newline = false
|
14136
14084
|
@location = location
|
14137
14085
|
@number = number
|
14138
14086
|
end
|
@@ -14229,7 +14177,6 @@ module Prism
|
|
14229
14177
|
# def initialize: (Integer flags, Symbol name, Location name_loc, Prism::node value, Location location) -> void
|
14230
14178
|
def initialize(source, flags, name, name_loc, value, location)
|
14231
14179
|
@source = source
|
14232
|
-
@newline = false
|
14233
14180
|
@location = location
|
14234
14181
|
@flags = flags
|
14235
14182
|
@name = name
|
@@ -14345,7 +14292,6 @@ module Prism
|
|
14345
14292
|
# def initialize: (Integer flags, Symbol name, Location name_loc, Location operator_loc, Prism::node value, Location location) -> void
|
14346
14293
|
def initialize(source, flags, name, name_loc, operator_loc, value, location)
|
14347
14294
|
@source = source
|
14348
|
-
@newline = false
|
14349
14295
|
@location = location
|
14350
14296
|
@flags = flags
|
14351
14297
|
@name = name
|
@@ -14474,7 +14420,6 @@ module Prism
|
|
14474
14420
|
# def initialize: (Prism::node left, Prism::node right, Location operator_loc, Location location) -> void
|
14475
14421
|
def initialize(source, left, right, operator_loc, location)
|
14476
14422
|
@source = source
|
14477
|
-
@newline = false
|
14478
14423
|
@location = location
|
14479
14424
|
@left = left
|
14480
14425
|
@right = right
|
@@ -14596,10 +14541,9 @@ module Prism
|
|
14596
14541
|
# ^^^^^^^
|
14597
14542
|
# end
|
14598
14543
|
class ParametersNode < Node
|
14599
|
-
# 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
|
14544
|
+
# def initialize: (Array[RequiredParameterNode | MultiTargetNode] requireds, Array[OptionalParameterNode] optionals, RestParameterNode | ImplicitRestNode | nil rest, Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode | ForwardingParameterNode] posts, Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode] keywords, KeywordRestParameterNode | ForwardingParameterNode | NoKeywordsParameterNode | nil keyword_rest, BlockParameterNode? block, Location location) -> void
|
14600
14545
|
def initialize(source, requireds, optionals, rest, posts, keywords, keyword_rest, block, location)
|
14601
14546
|
@source = source
|
14602
|
-
@newline = false
|
14603
14547
|
@location = location
|
14604
14548
|
@requireds = requireds
|
14605
14549
|
@optionals = optionals
|
@@ -14638,7 +14582,7 @@ module Prism
|
|
14638
14582
|
[*requireds, *optionals, *rest, *posts, *keywords, *keyword_rest, *block] #: Array[Prism::node | Location]
|
14639
14583
|
end
|
14640
14584
|
|
14641
|
-
# 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
|
14585
|
+
# def copy: (?requireds: Array[RequiredParameterNode | MultiTargetNode], ?optionals: Array[OptionalParameterNode], ?rest: RestParameterNode | ImplicitRestNode | nil, ?posts: Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode | ForwardingParameterNode], ?keywords: Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode], ?keyword_rest: KeywordRestParameterNode | ForwardingParameterNode | NoKeywordsParameterNode | nil, ?block: BlockParameterNode?, ?location: Location) -> ParametersNode
|
14642
14586
|
def copy(requireds: self.requireds, optionals: self.optionals, rest: self.rest, posts: self.posts, keywords: self.keywords, keyword_rest: self.keyword_rest, block: self.block, location: self.location)
|
14643
14587
|
ParametersNode.new(source, requireds, optionals, rest, posts, keywords, keyword_rest, block, location)
|
14644
14588
|
end
|
@@ -14646,7 +14590,7 @@ module Prism
|
|
14646
14590
|
# def deconstruct: () -> Array[nil | Node]
|
14647
14591
|
alias deconstruct child_nodes
|
14648
14592
|
|
14649
|
-
# 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 }
|
14593
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { requireds: Array[RequiredParameterNode | MultiTargetNode], optionals: Array[OptionalParameterNode], rest: RestParameterNode | ImplicitRestNode | nil, posts: Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode | ForwardingParameterNode], keywords: Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode], keyword_rest: KeywordRestParameterNode | ForwardingParameterNode | NoKeywordsParameterNode | nil, block: BlockParameterNode?, location: Location }
|
14650
14594
|
def deconstruct_keys(keys)
|
14651
14595
|
{ requireds: requireds, optionals: optionals, rest: rest, posts: posts, keywords: keywords, keyword_rest: keyword_rest, block: block, location: location }
|
14652
14596
|
end
|
@@ -14660,7 +14604,7 @@ module Prism
|
|
14660
14604
|
# attr_reader rest: RestParameterNode | ImplicitRestNode | nil
|
14661
14605
|
attr_reader :rest
|
14662
14606
|
|
14663
|
-
# attr_reader posts: Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode]
|
14607
|
+
# attr_reader posts: Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode | ForwardingParameterNode]
|
14664
14608
|
attr_reader :posts
|
14665
14609
|
|
14666
14610
|
# attr_reader keywords: Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode]
|
@@ -14731,7 +14675,6 @@ module Prism
|
|
14731
14675
|
# def initialize: (Prism::node? body, Location opening_loc, Location closing_loc, Location location) -> void
|
14732
14676
|
def initialize(source, body, opening_loc, closing_loc, location)
|
14733
14677
|
@source = source
|
14734
|
-
@newline = false
|
14735
14678
|
@location = location
|
14736
14679
|
@body = body
|
14737
14680
|
@opening_loc = opening_loc
|
@@ -14743,10 +14686,6 @@ module Prism
|
|
14743
14686
|
visitor.visit_parentheses_node(self)
|
14744
14687
|
end
|
14745
14688
|
|
14746
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
14747
|
-
# Never mark ParenthesesNode with a newline flag, mark children instead
|
14748
|
-
end
|
14749
|
-
|
14750
14689
|
# def child_nodes: () -> Array[nil | Node]
|
14751
14690
|
def child_nodes
|
14752
14691
|
[body]
|
@@ -14855,7 +14794,6 @@ module Prism
|
|
14855
14794
|
# def initialize: (Prism::node expression, Location operator_loc, Location lparen_loc, Location rparen_loc, Location location) -> void
|
14856
14795
|
def initialize(source, expression, operator_loc, lparen_loc, rparen_loc, location)
|
14857
14796
|
@source = source
|
14858
|
-
@newline = false
|
14859
14797
|
@location = location
|
14860
14798
|
@expression = expression
|
14861
14799
|
@operator_loc = operator_loc
|
@@ -14987,7 +14925,6 @@ module Prism
|
|
14987
14925
|
# def initialize: (Prism::node variable, Location operator_loc, Location location) -> void
|
14988
14926
|
def initialize(source, variable, operator_loc, location)
|
14989
14927
|
@source = source
|
14990
|
-
@newline = false
|
14991
14928
|
@location = location
|
14992
14929
|
@variable = variable
|
14993
14930
|
@operator_loc = operator_loc
|
@@ -15091,7 +15028,6 @@ module Prism
|
|
15091
15028
|
# def initialize: (StatementsNode? statements, Location keyword_loc, Location opening_loc, Location closing_loc, Location location) -> void
|
15092
15029
|
def initialize(source, statements, keyword_loc, opening_loc, closing_loc, location)
|
15093
15030
|
@source = source
|
15094
|
-
@newline = false
|
15095
15031
|
@location = location
|
15096
15032
|
@statements = statements
|
15097
15033
|
@keyword_loc = keyword_loc
|
@@ -15225,7 +15161,6 @@ module Prism
|
|
15225
15161
|
# def initialize: (StatementsNode? statements, Location keyword_loc, Location opening_loc, Location closing_loc, Location location) -> void
|
15226
15162
|
def initialize(source, statements, keyword_loc, opening_loc, closing_loc, location)
|
15227
15163
|
@source = source
|
15228
|
-
@newline = false
|
15229
15164
|
@location = location
|
15230
15165
|
@statements = statements
|
15231
15166
|
@keyword_loc = keyword_loc
|
@@ -15356,7 +15291,6 @@ module Prism
|
|
15356
15291
|
# def initialize: (Array[Symbol] locals, StatementsNode statements, Location location) -> void
|
15357
15292
|
def initialize(source, locals, statements, location)
|
15358
15293
|
@source = source
|
15359
|
-
@newline = false
|
15360
15294
|
@location = location
|
15361
15295
|
@locals = locals
|
15362
15296
|
@statements = statements
|
@@ -15455,7 +15389,6 @@ module Prism
|
|
15455
15389
|
# def initialize: (Integer flags, Prism::node? left, Prism::node? right, Location operator_loc, Location location) -> void
|
15456
15390
|
def initialize(source, flags, left, right, operator_loc, location)
|
15457
15391
|
@source = source
|
15458
|
-
@newline = false
|
15459
15392
|
@location = location
|
15460
15393
|
@flags = flags
|
15461
15394
|
@left = left
|
@@ -15588,12 +15521,13 @@ module Prism
|
|
15588
15521
|
# 1.0r
|
15589
15522
|
# ^^^^
|
15590
15523
|
class RationalNode < Node
|
15591
|
-
# def initialize: (
|
15592
|
-
def initialize(source,
|
15524
|
+
# def initialize: (Integer flags, Integer numerator, Integer denominator, Location location) -> void
|
15525
|
+
def initialize(source, flags, numerator, denominator, location)
|
15593
15526
|
@source = source
|
15594
|
-
@newline = false
|
15595
15527
|
@location = location
|
15596
|
-
@
|
15528
|
+
@flags = flags
|
15529
|
+
@numerator = numerator
|
15530
|
+
@denominator = denominator
|
15597
15531
|
end
|
15598
15532
|
|
15599
15533
|
# def accept: (Visitor visitor) -> void
|
@@ -15603,34 +15537,65 @@ module Prism
|
|
15603
15537
|
|
15604
15538
|
# def child_nodes: () -> Array[nil | Node]
|
15605
15539
|
def child_nodes
|
15606
|
-
[
|
15540
|
+
[]
|
15607
15541
|
end
|
15608
15542
|
|
15609
15543
|
# def compact_child_nodes: () -> Array[Node]
|
15610
15544
|
def compact_child_nodes
|
15611
|
-
[
|
15545
|
+
[]
|
15612
15546
|
end
|
15613
15547
|
|
15614
15548
|
# def comment_targets: () -> Array[Node | Location]
|
15615
15549
|
def comment_targets
|
15616
|
-
[
|
15550
|
+
[] #: Array[Prism::node | Location]
|
15617
15551
|
end
|
15618
15552
|
|
15619
|
-
# def copy: (?
|
15620
|
-
def copy(
|
15621
|
-
RationalNode.new(source,
|
15553
|
+
# def copy: (?flags: Integer, ?numerator: Integer, ?denominator: Integer, ?location: Location) -> RationalNode
|
15554
|
+
def copy(flags: self.flags, numerator: self.numerator, denominator: self.denominator, location: self.location)
|
15555
|
+
RationalNode.new(source, flags, numerator, denominator, location)
|
15622
15556
|
end
|
15623
15557
|
|
15624
15558
|
# def deconstruct: () -> Array[nil | Node]
|
15625
15559
|
alias deconstruct child_nodes
|
15626
15560
|
|
15627
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> {
|
15561
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { flags: Integer, numerator: Integer, denominator: Integer, location: Location }
|
15628
15562
|
def deconstruct_keys(keys)
|
15629
|
-
{
|
15563
|
+
{ flags: flags, numerator: numerator, denominator: denominator, location: location }
|
15630
15564
|
end
|
15631
15565
|
|
15632
|
-
# attr_reader
|
15633
|
-
attr_reader :
|
15566
|
+
# protected attr_reader flags: Integer
|
15567
|
+
attr_reader :flags
|
15568
|
+
protected :flags
|
15569
|
+
|
15570
|
+
# The numerator of the rational number.
|
15571
|
+
#
|
15572
|
+
# 1.5r # numerator 3
|
15573
|
+
attr_reader :numerator
|
15574
|
+
|
15575
|
+
# The denominator of the rational number.
|
15576
|
+
#
|
15577
|
+
# 1.5r # denominator 2
|
15578
|
+
attr_reader :denominator
|
15579
|
+
|
15580
|
+
# def binary?: () -> bool
|
15581
|
+
def binary?
|
15582
|
+
flags.anybits?(IntegerBaseFlags::BINARY)
|
15583
|
+
end
|
15584
|
+
|
15585
|
+
# def decimal?: () -> bool
|
15586
|
+
def decimal?
|
15587
|
+
flags.anybits?(IntegerBaseFlags::DECIMAL)
|
15588
|
+
end
|
15589
|
+
|
15590
|
+
# def octal?: () -> bool
|
15591
|
+
def octal?
|
15592
|
+
flags.anybits?(IntegerBaseFlags::OCTAL)
|
15593
|
+
end
|
15594
|
+
|
15595
|
+
# def hexadecimal?: () -> bool
|
15596
|
+
def hexadecimal?
|
15597
|
+
flags.anybits?(IntegerBaseFlags::HEXADECIMAL)
|
15598
|
+
end
|
15634
15599
|
|
15635
15600
|
# def inspect -> String
|
15636
15601
|
def inspect
|
@@ -15669,7 +15634,9 @@ module Prism
|
|
15669
15634
|
# comparing the value of locations. Locations are checked only for presence.
|
15670
15635
|
def ===(other)
|
15671
15636
|
other.is_a?(RationalNode) &&
|
15672
|
-
(
|
15637
|
+
(flags === other.flags) &&
|
15638
|
+
(numerator === other.numerator) &&
|
15639
|
+
(denominator === other.denominator)
|
15673
15640
|
end
|
15674
15641
|
end
|
15675
15642
|
|
@@ -15681,7 +15648,6 @@ module Prism
|
|
15681
15648
|
# def initialize: (Location location) -> void
|
15682
15649
|
def initialize(source, location)
|
15683
15650
|
@source = source
|
15684
|
-
@newline = false
|
15685
15651
|
@location = location
|
15686
15652
|
end
|
15687
15653
|
|
@@ -15766,7 +15732,6 @@ module Prism
|
|
15766
15732
|
# def initialize: (Integer flags, Location opening_loc, Location content_loc, Location closing_loc, String unescaped, Location location) -> void
|
15767
15733
|
def initialize(source, flags, opening_loc, content_loc, closing_loc, unescaped, location)
|
15768
15734
|
@source = source
|
15769
|
-
@newline = false
|
15770
15735
|
@location = location
|
15771
15736
|
@flags = flags
|
15772
15737
|
@opening_loc = opening_loc
|
@@ -15960,7 +15925,6 @@ module Prism
|
|
15960
15925
|
# def initialize: (Integer flags, Symbol name, Location name_loc, Location location) -> void
|
15961
15926
|
def initialize(source, flags, name, name_loc, location)
|
15962
15927
|
@source = source
|
15963
|
-
@newline = false
|
15964
15928
|
@location = location
|
15965
15929
|
@flags = flags
|
15966
15930
|
@name = name
|
@@ -16071,7 +16035,6 @@ module Prism
|
|
16071
16035
|
# def initialize: (Integer flags, Symbol name, Location location) -> void
|
16072
16036
|
def initialize(source, flags, name, location)
|
16073
16037
|
@source = source
|
16074
|
-
@newline = false
|
16075
16038
|
@location = location
|
16076
16039
|
@flags = flags
|
16077
16040
|
@name = name
|
@@ -16172,7 +16135,6 @@ module Prism
|
|
16172
16135
|
# def initialize: (Prism::node expression, Location keyword_loc, Prism::node rescue_expression, Location location) -> void
|
16173
16136
|
def initialize(source, expression, keyword_loc, rescue_expression, location)
|
16174
16137
|
@source = source
|
16175
|
-
@newline = false
|
16176
16138
|
@location = location
|
16177
16139
|
@expression = expression
|
16178
16140
|
@keyword_loc = keyword_loc
|
@@ -16184,10 +16146,6 @@ module Prism
|
|
16184
16146
|
visitor.visit_rescue_modifier_node(self)
|
16185
16147
|
end
|
16186
16148
|
|
16187
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
16188
|
-
expression.set_newline_flag(newline_marked)
|
16189
|
-
end
|
16190
|
-
|
16191
16149
|
# def child_nodes: () -> Array[nil | Node]
|
16192
16150
|
def child_nodes
|
16193
16151
|
[expression, rescue_expression]
|
@@ -16290,7 +16248,6 @@ module Prism
|
|
16290
16248
|
# def initialize: (Location keyword_loc, Array[Prism::node] exceptions, Location? operator_loc, Prism::node? reference, StatementsNode? statements, RescueNode? consequent, Location location) -> void
|
16291
16249
|
def initialize(source, keyword_loc, exceptions, operator_loc, reference, statements, consequent, location)
|
16292
16250
|
@source = source
|
16293
|
-
@newline = false
|
16294
16251
|
@location = location
|
16295
16252
|
@keyword_loc = keyword_loc
|
16296
16253
|
@exceptions = exceptions
|
@@ -16436,7 +16393,6 @@ module Prism
|
|
16436
16393
|
# def initialize: (Integer flags, Symbol? name, Location? name_loc, Location operator_loc, Location location) -> void
|
16437
16394
|
def initialize(source, flags, name, name_loc, operator_loc, location)
|
16438
16395
|
@source = source
|
16439
|
-
@newline = false
|
16440
16396
|
@location = location
|
16441
16397
|
@flags = flags
|
16442
16398
|
@name = name
|
@@ -16566,7 +16522,6 @@ module Prism
|
|
16566
16522
|
# def initialize: (Location location) -> void
|
16567
16523
|
def initialize(source, location)
|
16568
16524
|
@source = source
|
16569
|
-
@newline = false
|
16570
16525
|
@location = location
|
16571
16526
|
end
|
16572
16527
|
|
@@ -16651,7 +16606,6 @@ module Prism
|
|
16651
16606
|
# def initialize: (Integer flags, Location keyword_loc, ArgumentsNode? arguments, Location location) -> void
|
16652
16607
|
def initialize(source, flags, keyword_loc, arguments, location)
|
16653
16608
|
@source = source
|
16654
|
-
@newline = false
|
16655
16609
|
@location = location
|
16656
16610
|
@flags = flags
|
16657
16611
|
@keyword_loc = keyword_loc
|
@@ -16768,7 +16722,6 @@ module Prism
|
|
16768
16722
|
# def initialize: (Location location) -> void
|
16769
16723
|
def initialize(source, location)
|
16770
16724
|
@source = source
|
16771
|
-
@newline = false
|
16772
16725
|
@location = location
|
16773
16726
|
end
|
16774
16727
|
|
@@ -16854,7 +16807,6 @@ module Prism
|
|
16854
16807
|
# def initialize: (Integer flags, ConstantWriteNode | ConstantAndWriteNode | ConstantOrWriteNode | ConstantOperatorWriteNode | ConstantPathWriteNode | ConstantPathAndWriteNode | ConstantPathOrWriteNode | ConstantPathOperatorWriteNode write, Location location) -> void
|
16855
16808
|
def initialize(source, flags, write, location)
|
16856
16809
|
@source = source
|
16857
|
-
@newline = false
|
16858
16810
|
@location = location
|
16859
16811
|
@flags = flags
|
16860
16812
|
@write = write
|
@@ -16965,7 +16917,6 @@ module Prism
|
|
16965
16917
|
# 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
|
16966
16918
|
def initialize(source, locals, class_keyword_loc, operator_loc, expression, body, end_keyword_loc, location)
|
16967
16919
|
@source = source
|
16968
|
-
@newline = false
|
16969
16920
|
@location = location
|
16970
16921
|
@locals = locals
|
16971
16922
|
@class_keyword_loc = class_keyword_loc
|
@@ -17111,7 +17062,6 @@ module Prism
|
|
17111
17062
|
# def initialize: (Location location) -> void
|
17112
17063
|
def initialize(source, location)
|
17113
17064
|
@source = source
|
17114
|
-
@newline = false
|
17115
17065
|
@location = location
|
17116
17066
|
end
|
17117
17067
|
|
@@ -17196,7 +17146,6 @@ module Prism
|
|
17196
17146
|
# def initialize: (Integer flags, String filepath, Location location) -> void
|
17197
17147
|
def initialize(source, flags, filepath, location)
|
17198
17148
|
@source = source
|
17199
|
-
@newline = false
|
17200
17149
|
@location = location
|
17201
17150
|
@flags = flags
|
17202
17151
|
@filepath = filepath
|
@@ -17312,7 +17261,6 @@ module Prism
|
|
17312
17261
|
# def initialize: (Location location) -> void
|
17313
17262
|
def initialize(source, location)
|
17314
17263
|
@source = source
|
17315
|
-
@newline = false
|
17316
17264
|
@location = location
|
17317
17265
|
end
|
17318
17266
|
|
@@ -17397,7 +17345,6 @@ module Prism
|
|
17397
17345
|
# def initialize: (Location operator_loc, Prism::node? expression, Location location) -> void
|
17398
17346
|
def initialize(source, operator_loc, expression, location)
|
17399
17347
|
@source = source
|
17400
|
-
@newline = false
|
17401
17348
|
@location = location
|
17402
17349
|
@operator_loc = operator_loc
|
17403
17350
|
@expression = expression
|
@@ -17503,7 +17450,6 @@ module Prism
|
|
17503
17450
|
# def initialize: (Array[Prism::node] body, Location location) -> void
|
17504
17451
|
def initialize(source, body, location)
|
17505
17452
|
@source = source
|
17506
|
-
@newline = false
|
17507
17453
|
@location = location
|
17508
17454
|
@body = body
|
17509
17455
|
end
|
@@ -17600,7 +17546,6 @@ module Prism
|
|
17600
17546
|
# def initialize: (Integer flags, Location? opening_loc, Location content_loc, Location? closing_loc, String unescaped, Location location) -> void
|
17601
17547
|
def initialize(source, flags, opening_loc, content_loc, closing_loc, unescaped, location)
|
17602
17548
|
@source = source
|
17603
|
-
@newline = false
|
17604
17549
|
@location = location
|
17605
17550
|
@flags = flags
|
17606
17551
|
@opening_loc = opening_loc
|
@@ -17773,7 +17718,6 @@ module Prism
|
|
17773
17718
|
# def initialize: (Location keyword_loc, Location? lparen_loc, ArgumentsNode? arguments, Location? rparen_loc, Prism::node? block, Location location) -> void
|
17774
17719
|
def initialize(source, keyword_loc, lparen_loc, arguments, rparen_loc, block, location)
|
17775
17720
|
@source = source
|
17776
|
-
@newline = false
|
17777
17721
|
@location = location
|
17778
17722
|
@keyword_loc = keyword_loc
|
17779
17723
|
@lparen_loc = lparen_loc
|
@@ -17928,7 +17872,6 @@ module Prism
|
|
17928
17872
|
# def initialize: (Integer flags, Location? opening_loc, Location? value_loc, Location? closing_loc, String unescaped, Location location) -> void
|
17929
17873
|
def initialize(source, flags, opening_loc, value_loc, closing_loc, unescaped, location)
|
17930
17874
|
@source = source
|
17931
|
-
@newline = false
|
17932
17875
|
@location = location
|
17933
17876
|
@flags = flags
|
17934
17877
|
@opening_loc = opening_loc
|
@@ -18099,7 +18042,6 @@ module Prism
|
|
18099
18042
|
# def initialize: (Location location) -> void
|
18100
18043
|
def initialize(source, location)
|
18101
18044
|
@source = source
|
18102
|
-
@newline = false
|
18103
18045
|
@location = location
|
18104
18046
|
end
|
18105
18047
|
|
@@ -18184,7 +18126,6 @@ module Prism
|
|
18184
18126
|
# def initialize: (Array[SymbolNode | InterpolatedSymbolNode] names, Location keyword_loc, Location location) -> void
|
18185
18127
|
def initialize(source, names, keyword_loc, location)
|
18186
18128
|
@source = source
|
18187
|
-
@newline = false
|
18188
18129
|
@location = location
|
18189
18130
|
@names = names
|
18190
18131
|
@keyword_loc = keyword_loc
|
@@ -18292,7 +18233,6 @@ module Prism
|
|
18292
18233
|
# def initialize: (Location keyword_loc, Prism::node predicate, Location? then_keyword_loc, StatementsNode? statements, ElseNode? consequent, Location? end_keyword_loc, Location location) -> void
|
18293
18234
|
def initialize(source, keyword_loc, predicate, then_keyword_loc, statements, consequent, end_keyword_loc, location)
|
18294
18235
|
@source = source
|
18295
|
-
@newline = false
|
18296
18236
|
@location = location
|
18297
18237
|
@keyword_loc = keyword_loc
|
18298
18238
|
@predicate = predicate
|
@@ -18307,10 +18247,6 @@ module Prism
|
|
18307
18247
|
visitor.visit_unless_node(self)
|
18308
18248
|
end
|
18309
18249
|
|
18310
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
18311
|
-
predicate.set_newline_flag(newline_marked)
|
18312
|
-
end
|
18313
|
-
|
18314
18250
|
# def child_nodes: () -> Array[nil | Node]
|
18315
18251
|
def child_nodes
|
18316
18252
|
[predicate, statements, consequent]
|
@@ -18366,7 +18302,9 @@ module Prism
|
|
18366
18302
|
attr_reader :predicate
|
18367
18303
|
|
18368
18304
|
# The location of the `then` keyword, if present.
|
18369
|
-
#
|
18305
|
+
#
|
18306
|
+
# unless cond then bar end
|
18307
|
+
# ^^^^
|
18370
18308
|
def then_keyword_loc
|
18371
18309
|
location = @then_keyword_loc
|
18372
18310
|
case location
|
@@ -18480,7 +18418,6 @@ module Prism
|
|
18480
18418
|
# def initialize: (Integer flags, Location keyword_loc, Location? closing_loc, Prism::node predicate, StatementsNode? statements, Location location) -> void
|
18481
18419
|
def initialize(source, flags, keyword_loc, closing_loc, predicate, statements, location)
|
18482
18420
|
@source = source
|
18483
|
-
@newline = false
|
18484
18421
|
@location = location
|
18485
18422
|
@flags = flags
|
18486
18423
|
@keyword_loc = keyword_loc
|
@@ -18494,10 +18431,6 @@ module Prism
|
|
18494
18431
|
visitor.visit_until_node(self)
|
18495
18432
|
end
|
18496
18433
|
|
18497
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
18498
|
-
predicate.set_newline_flag(newline_marked)
|
18499
|
-
end
|
18500
|
-
|
18501
18434
|
# def child_nodes: () -> Array[nil | Node]
|
18502
18435
|
def child_nodes
|
18503
18436
|
[predicate, statements]
|
@@ -18629,7 +18562,6 @@ module Prism
|
|
18629
18562
|
# def initialize: (Location keyword_loc, Array[Prism::node] conditions, Location? then_keyword_loc, StatementsNode? statements, Location location) -> void
|
18630
18563
|
def initialize(source, keyword_loc, conditions, then_keyword_loc, statements, location)
|
18631
18564
|
@source = source
|
18632
|
-
@newline = false
|
18633
18565
|
@location = location
|
18634
18566
|
@keyword_loc = keyword_loc
|
18635
18567
|
@conditions = conditions
|
@@ -18765,7 +18697,6 @@ module Prism
|
|
18765
18697
|
# def initialize: (Integer flags, Location keyword_loc, Location? closing_loc, Prism::node predicate, StatementsNode? statements, Location location) -> void
|
18766
18698
|
def initialize(source, flags, keyword_loc, closing_loc, predicate, statements, location)
|
18767
18699
|
@source = source
|
18768
|
-
@newline = false
|
18769
18700
|
@location = location
|
18770
18701
|
@flags = flags
|
18771
18702
|
@keyword_loc = keyword_loc
|
@@ -18779,10 +18710,6 @@ module Prism
|
|
18779
18710
|
visitor.visit_while_node(self)
|
18780
18711
|
end
|
18781
18712
|
|
18782
|
-
def set_newline_flag(newline_marked) # :nodoc:
|
18783
|
-
predicate.set_newline_flag(newline_marked)
|
18784
|
-
end
|
18785
|
-
|
18786
18713
|
# def child_nodes: () -> Array[nil | Node]
|
18787
18714
|
def child_nodes
|
18788
18715
|
[predicate, statements]
|
@@ -18912,7 +18839,6 @@ module Prism
|
|
18912
18839
|
# def initialize: (Integer flags, Location opening_loc, Location content_loc, Location closing_loc, String unescaped, Location location) -> void
|
18913
18840
|
def initialize(source, flags, opening_loc, content_loc, closing_loc, unescaped, location)
|
18914
18841
|
@source = source
|
18915
|
-
@newline = false
|
18916
18842
|
@location = location
|
18917
18843
|
@flags = flags
|
18918
18844
|
@opening_loc = opening_loc
|
@@ -19060,7 +18986,6 @@ module Prism
|
|
19060
18986
|
# def initialize: (Location keyword_loc, Location? lparen_loc, ArgumentsNode? arguments, Location? rparen_loc, Location location) -> void
|
19061
18987
|
def initialize(source, keyword_loc, lparen_loc, arguments, rparen_loc, location)
|
19062
18988
|
@source = source
|
19063
|
-
@newline = false
|
19064
18989
|
@location = location
|
19065
18990
|
@keyword_loc = keyword_loc
|
19066
18991
|
@lparen_loc = lparen_loc
|