prism 0.27.0 → 0.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +45 -1
- data/config.yml +68 -44
- data/docs/configuration.md +1 -0
- data/ext/prism/api_node.c +854 -847
- data/ext/prism/extconf.rb +27 -23
- data/ext/prism/extension.c +5 -3
- data/ext/prism/extension.h +1 -1
- data/include/prism/ast.h +70 -48
- data/include/prism/diagnostic.h +23 -6
- data/include/prism/options.h +2 -2
- data/include/prism/parser.h +10 -0
- data/include/prism/static_literals.h +8 -6
- data/include/prism/version.h +2 -2
- data/lib/prism/desugar_compiler.rb +4 -4
- data/lib/prism/dot_visitor.rb +54 -38
- data/lib/prism/dsl.rb +24 -24
- data/lib/prism/ffi.rb +4 -4
- data/lib/prism/inspect_visitor.rb +2156 -0
- data/lib/prism/lex_compat.rb +1 -1
- data/lib/prism/mutation_compiler.rb +2 -2
- data/lib/prism/node.rb +737 -1863
- data/lib/prism/node_ext.rb +176 -5
- data/lib/prism/parse_result/comments.rb +1 -1
- data/lib/prism/parse_result/newlines.rb +1 -1
- data/lib/prism/parse_result.rb +78 -0
- data/lib/prism/pattern.rb +12 -6
- data/lib/prism/polyfill/byteindex.rb +13 -0
- data/lib/prism/polyfill/unpack1.rb +14 -0
- data/lib/prism/reflection.rb +20 -20
- data/lib/prism/serialize.rb +32 -15
- data/lib/prism/translation/parser/compiler.rb +156 -26
- data/lib/prism/translation/parser.rb +7 -7
- data/lib/prism/translation/ripper.rb +29 -25
- data/lib/prism/translation/ruby_parser.rb +13 -13
- data/lib/prism.rb +2 -1
- data/prism.gemspec +37 -38
- data/rbi/prism/compiler.rbi +3 -5
- data/rbi/prism/inspect_visitor.rbi +12 -0
- data/rbi/prism/node.rbi +405 -370
- data/rbi/prism/node_ext.rbi +5 -0
- data/rbi/prism/parse_result.rbi +23 -0
- data/rbi/prism/translation/ripper.rbi +1 -11
- data/sig/prism/dsl.rbs +12 -12
- data/sig/prism/inspect_visitor.rbs +22 -0
- data/sig/prism/lex_compat.rbs +10 -0
- data/sig/prism/node.rbs +108 -91
- data/sig/prism/node_ext.rbs +4 -0
- data/sig/prism/parse_result.rbs +12 -0
- data/src/diagnostic.c +66 -33
- data/src/node.c +89 -64
- data/src/options.c +2 -2
- data/src/prettyprint.c +109 -66
- data/src/prism.c +862 -317
- data/src/serialize.c +21 -18
- data/src/static_literals.c +120 -34
- data/src/token_type.c +6 -6
- metadata +8 -9
- data/lib/prism/node_inspector.rb +0 -68
- data/lib/prism/polyfill/string.rb +0 -12
- data/rbi/prism/desugar_compiler.rbi +0 -5
- data/rbi/prism/mutation_compiler.rbi +0 -5
- data/rbi/prism/translation/parser/compiler.rbi +0 -13
- data/rbi/prism/translation/ripper/ripper_compiler.rbi +0 -5
- data/rbi/prism/translation/ruby_parser.rbi +0 -11
@@ -1181,8 +1181,8 @@ module Prism
|
|
1181
1181
|
bounds(node.location)
|
1182
1182
|
target = on_field(receiver, call_operator, message)
|
1183
1183
|
|
1184
|
-
bounds(node.
|
1185
|
-
operator = on_op("#{node.
|
1184
|
+
bounds(node.binary_operator_loc)
|
1185
|
+
operator = on_op("#{node.binary_operator}=")
|
1186
1186
|
value = visit_write_value(node.value)
|
1187
1187
|
|
1188
1188
|
bounds(node.location)
|
@@ -1339,8 +1339,8 @@ module Prism
|
|
1339
1339
|
bounds(node.name_loc)
|
1340
1340
|
target = on_var_field(on_cvar(node.name.to_s))
|
1341
1341
|
|
1342
|
-
bounds(node.
|
1343
|
-
operator = on_op("#{node.
|
1342
|
+
bounds(node.binary_operator_loc)
|
1343
|
+
operator = on_op("#{node.binary_operator}=")
|
1344
1344
|
value = visit_write_value(node.value)
|
1345
1345
|
|
1346
1346
|
bounds(node.location)
|
@@ -1409,8 +1409,8 @@ module Prism
|
|
1409
1409
|
bounds(node.name_loc)
|
1410
1410
|
target = on_var_field(on_const(node.name.to_s))
|
1411
1411
|
|
1412
|
-
bounds(node.
|
1413
|
-
operator = on_op("#{node.
|
1412
|
+
bounds(node.binary_operator_loc)
|
1413
|
+
operator = on_op("#{node.binary_operator}=")
|
1414
1414
|
value = visit_write_value(node.value)
|
1415
1415
|
|
1416
1416
|
bounds(node.location)
|
@@ -1456,16 +1456,16 @@ module Prism
|
|
1456
1456
|
# ^^^^^^^^
|
1457
1457
|
def visit_constant_path_node(node)
|
1458
1458
|
if node.parent.nil?
|
1459
|
-
bounds(node.
|
1460
|
-
child = on_const(node.
|
1459
|
+
bounds(node.name_loc)
|
1460
|
+
child = on_const(node.name.to_s)
|
1461
1461
|
|
1462
1462
|
bounds(node.location)
|
1463
1463
|
on_top_const_ref(child)
|
1464
1464
|
else
|
1465
1465
|
parent = visit(node.parent)
|
1466
1466
|
|
1467
|
-
bounds(node.
|
1468
|
-
child = on_const(node.
|
1467
|
+
bounds(node.name_loc)
|
1468
|
+
child = on_const(node.name.to_s)
|
1469
1469
|
|
1470
1470
|
bounds(node.location)
|
1471
1471
|
on_const_path_ref(parent, child)
|
@@ -1488,16 +1488,16 @@ module Prism
|
|
1488
1488
|
# Visit a constant path that is part of a write node.
|
1489
1489
|
private def visit_constant_path_write_node_target(node)
|
1490
1490
|
if node.parent.nil?
|
1491
|
-
bounds(node.
|
1492
|
-
child = on_const(node.
|
1491
|
+
bounds(node.name_loc)
|
1492
|
+
child = on_const(node.name.to_s)
|
1493
1493
|
|
1494
1494
|
bounds(node.location)
|
1495
1495
|
on_top_const_field(child)
|
1496
1496
|
else
|
1497
1497
|
parent = visit(node.parent)
|
1498
1498
|
|
1499
|
-
bounds(node.
|
1500
|
-
child = on_const(node.
|
1499
|
+
bounds(node.name_loc)
|
1500
|
+
child = on_const(node.name.to_s)
|
1501
1501
|
|
1502
1502
|
bounds(node.location)
|
1503
1503
|
on_const_path_field(parent, child)
|
@@ -1510,8 +1510,8 @@ module Prism
|
|
1510
1510
|
target = visit_constant_path_write_node_target(node.target)
|
1511
1511
|
value = visit(node.value)
|
1512
1512
|
|
1513
|
-
bounds(node.
|
1514
|
-
operator = on_op("#{node.
|
1513
|
+
bounds(node.binary_operator_loc)
|
1514
|
+
operator = on_op("#{node.binary_operator}=")
|
1515
1515
|
value = visit_write_value(node.value)
|
1516
1516
|
|
1517
1517
|
bounds(node.location)
|
@@ -1802,8 +1802,8 @@ module Prism
|
|
1802
1802
|
bounds(node.name_loc)
|
1803
1803
|
target = on_var_field(on_gvar(node.name.to_s))
|
1804
1804
|
|
1805
|
-
bounds(node.
|
1806
|
-
operator = on_op("#{node.
|
1805
|
+
bounds(node.binary_operator_loc)
|
1806
|
+
operator = on_op("#{node.binary_operator}=")
|
1807
1807
|
value = visit_write_value(node.value)
|
1808
1808
|
|
1809
1809
|
bounds(node.location)
|
@@ -1983,8 +1983,8 @@ module Prism
|
|
1983
1983
|
bounds(node.location)
|
1984
1984
|
target = on_aref_field(receiver, arguments)
|
1985
1985
|
|
1986
|
-
bounds(node.
|
1987
|
-
operator = on_op("#{node.
|
1986
|
+
bounds(node.binary_operator_loc)
|
1987
|
+
operator = on_op("#{node.binary_operator}=")
|
1988
1988
|
value = visit_write_value(node.value)
|
1989
1989
|
|
1990
1990
|
bounds(node.location)
|
@@ -2059,8 +2059,8 @@ module Prism
|
|
2059
2059
|
bounds(node.name_loc)
|
2060
2060
|
target = on_var_field(on_ivar(node.name.to_s))
|
2061
2061
|
|
2062
|
-
bounds(node.
|
2063
|
-
operator = on_op("#{node.
|
2062
|
+
bounds(node.binary_operator_loc)
|
2063
|
+
operator = on_op("#{node.binary_operator}=")
|
2064
2064
|
value = visit_write_value(node.value)
|
2065
2065
|
|
2066
2066
|
bounds(node.location)
|
@@ -2337,8 +2337,8 @@ module Prism
|
|
2337
2337
|
bounds(node.name_loc)
|
2338
2338
|
target = on_var_field(on_ident(node.name_loc.slice))
|
2339
2339
|
|
2340
|
-
bounds(node.
|
2341
|
-
operator = on_op("#{node.
|
2340
|
+
bounds(node.binary_operator_loc)
|
2341
|
+
operator = on_op("#{node.binary_operator}=")
|
2342
2342
|
value = visit_write_value(node.value)
|
2343
2343
|
|
2344
2344
|
bounds(node.location)
|
@@ -3267,7 +3267,11 @@ module Prism
|
|
3267
3267
|
|
3268
3268
|
# Lazily initialize the parse result.
|
3269
3269
|
def result
|
3270
|
-
@result ||=
|
3270
|
+
@result ||=
|
3271
|
+
begin
|
3272
|
+
scopes = RUBY_VERSION >= "3.3.0" ? [] : [[]]
|
3273
|
+
Prism.parse(source, scopes: scopes)
|
3274
|
+
end
|
3271
3275
|
end
|
3272
3276
|
|
3273
3277
|
##########################################################################
|
@@ -271,9 +271,9 @@ module Prism
|
|
271
271
|
# ^^^^^^^^^^^^^^^
|
272
272
|
def visit_call_operator_write_node(node)
|
273
273
|
if op_asgn?(node)
|
274
|
-
s(node, op_asgn_type(node, :op_asgn), visit(node.receiver), visit_write_value(node.value), node.read_name, node.
|
274
|
+
s(node, op_asgn_type(node, :op_asgn), visit(node.receiver), visit_write_value(node.value), node.read_name, node.binary_operator)
|
275
275
|
else
|
276
|
-
s(node, op_asgn_type(node, :op_asgn2), visit(node.receiver), node.write_name, node.
|
276
|
+
s(node, op_asgn_type(node, :op_asgn2), visit(node.receiver), node.write_name, node.binary_operator, visit_write_value(node.value))
|
277
277
|
end
|
278
278
|
end
|
279
279
|
|
@@ -372,7 +372,7 @@ module Prism
|
|
372
372
|
# @@foo += bar
|
373
373
|
# ^^^^^^^^^^^^
|
374
374
|
def visit_class_variable_operator_write_node(node)
|
375
|
-
s(node, class_variable_write_type, node.name, s(node, :call, s(node, :cvar, node.name), node.
|
375
|
+
s(node, class_variable_write_type, node.name, s(node, :call, s(node, :cvar, node.name), node.binary_operator, visit_write_value(node.value)))
|
376
376
|
end
|
377
377
|
|
378
378
|
# @@foo &&= bar
|
@@ -417,7 +417,7 @@ module Prism
|
|
417
417
|
# Foo += bar
|
418
418
|
# ^^^^^^^^^^^
|
419
419
|
def visit_constant_operator_write_node(node)
|
420
|
-
s(node, :cdecl, node.name, s(node, :call, s(node, :const, node.name), node.
|
420
|
+
s(node, :cdecl, node.name, s(node, :call, s(node, :const, node.name), node.binary_operator, visit_write_value(node.value)))
|
421
421
|
end
|
422
422
|
|
423
423
|
# Foo &&= bar
|
@@ -442,9 +442,9 @@ module Prism
|
|
442
442
|
# ^^^^^^^^
|
443
443
|
def visit_constant_path_node(node)
|
444
444
|
if node.parent.nil?
|
445
|
-
s(node, :colon3, node.
|
445
|
+
s(node, :colon3, node.name)
|
446
446
|
else
|
447
|
-
s(node, :colon2, visit(node.parent), node.
|
447
|
+
s(node, :colon2, visit(node.parent), node.name)
|
448
448
|
end
|
449
449
|
end
|
450
450
|
|
@@ -460,7 +460,7 @@ module Prism
|
|
460
460
|
# Foo::Bar += baz
|
461
461
|
# ^^^^^^^^^^^^^^^
|
462
462
|
def visit_constant_path_operator_write_node(node)
|
463
|
-
s(node, :op_asgn, visit(node.target), node.
|
463
|
+
s(node, :op_asgn, visit(node.target), node.binary_operator, visit_write_value(node.value))
|
464
464
|
end
|
465
465
|
|
466
466
|
# Foo::Bar &&= baz
|
@@ -627,7 +627,7 @@ module Prism
|
|
627
627
|
# $foo += bar
|
628
628
|
# ^^^^^^^^^^^
|
629
629
|
def visit_global_variable_operator_write_node(node)
|
630
|
-
s(node, :gasgn, node.name, s(node, :call, s(node, :gvar, node.name), node.
|
630
|
+
s(node, :gasgn, node.name, s(node, :call, s(node, :gvar, node.name), node.binary_operator, visit(node.value)))
|
631
631
|
end
|
632
632
|
|
633
633
|
# $foo &&= bar
|
@@ -719,7 +719,7 @@ module Prism
|
|
719
719
|
arglist << visit(node.block) if !node.block.nil?
|
720
720
|
end
|
721
721
|
|
722
|
-
s(node, :op_asgn1, visit(node.receiver), arglist, node.
|
722
|
+
s(node, :op_asgn1, visit(node.receiver), arglist, node.binary_operator, visit_write_value(node.value))
|
723
723
|
end
|
724
724
|
|
725
725
|
# foo[bar] &&= baz
|
@@ -775,7 +775,7 @@ module Prism
|
|
775
775
|
# @foo += bar
|
776
776
|
# ^^^^^^^^^^^
|
777
777
|
def visit_instance_variable_operator_write_node(node)
|
778
|
-
s(node, :iasgn, node.name, s(node, :call, s(node, :ivar, node.name), node.
|
778
|
+
s(node, :iasgn, node.name, s(node, :call, s(node, :ivar, node.name), node.binary_operator, visit_write_value(node.value)))
|
779
779
|
end
|
780
780
|
|
781
781
|
# @foo &&= bar
|
@@ -960,7 +960,7 @@ module Prism
|
|
960
960
|
# foo += bar
|
961
961
|
# ^^^^^^^^^^
|
962
962
|
def visit_local_variable_operator_write_node(node)
|
963
|
-
s(node, :lasgn, node.name, s(node, :call, s(node, :lvar, node.name), node.
|
963
|
+
s(node, :lasgn, node.name, s(node, :call, s(node, :lvar, node.name), node.binary_operator, visit_write_value(node.value)))
|
964
964
|
end
|
965
965
|
|
966
966
|
# foo &&= bar
|
@@ -1536,13 +1536,13 @@ module Prism
|
|
1536
1536
|
# Parse the given source and translate it into the seattlerb/ruby_parser
|
1537
1537
|
# gem's Sexp format.
|
1538
1538
|
def parse(source, filepath = "(string)")
|
1539
|
-
translate(Prism.parse(source, filepath: filepath), filepath)
|
1539
|
+
translate(Prism.parse(source, filepath: filepath, scopes: [[]]), filepath)
|
1540
1540
|
end
|
1541
1541
|
|
1542
1542
|
# Parse the given file and translate it into the seattlerb/ruby_parser
|
1543
1543
|
# gem's Sexp format.
|
1544
1544
|
def parse_file(filepath)
|
1545
|
-
translate(Prism.parse_file(filepath), filepath)
|
1545
|
+
translate(Prism.parse_file(filepath, scopes: [[]]), filepath)
|
1546
1546
|
end
|
1547
1547
|
|
1548
1548
|
class << self
|
data/lib/prism.rb
CHANGED
@@ -18,10 +18,10 @@ module Prism
|
|
18
18
|
autoload :Dispatcher, "prism/dispatcher"
|
19
19
|
autoload :DotVisitor, "prism/dot_visitor"
|
20
20
|
autoload :DSL, "prism/dsl"
|
21
|
+
autoload :InspectVisitor, "prism/inspect_visitor"
|
21
22
|
autoload :LexCompat, "prism/lex_compat"
|
22
23
|
autoload :LexRipper, "prism/lex_compat"
|
23
24
|
autoload :MutationCompiler, "prism/mutation_compiler"
|
24
|
-
autoload :NodeInspector, "prism/node_inspector"
|
25
25
|
autoload :Pack, "prism/pack"
|
26
26
|
autoload :Pattern, "prism/pattern"
|
27
27
|
autoload :Reflection, "prism/reflection"
|
@@ -67,6 +67,7 @@ module Prism
|
|
67
67
|
end
|
68
68
|
end
|
69
69
|
|
70
|
+
require_relative "prism/polyfill/byteindex"
|
70
71
|
require_relative "prism/node"
|
71
72
|
require_relative "prism/node_ext"
|
72
73
|
require_relative "prism/parse_result"
|
data/prism.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |spec|
|
4
4
|
spec.name = "prism"
|
5
|
-
spec.version = "0.
|
5
|
+
spec.version = "0.29.0"
|
6
6
|
spec.authors = ["Shopify"]
|
7
7
|
spec.email = ["ruby@shopify.com"]
|
8
8
|
|
@@ -76,17 +76,18 @@ Gem::Specification.new do |spec|
|
|
76
76
|
"lib/prism/dot_visitor.rb",
|
77
77
|
"lib/prism/dsl.rb",
|
78
78
|
"lib/prism/ffi.rb",
|
79
|
+
"lib/prism/inspect_visitor.rb",
|
79
80
|
"lib/prism/lex_compat.rb",
|
80
81
|
"lib/prism/mutation_compiler.rb",
|
81
82
|
"lib/prism/node_ext.rb",
|
82
|
-
"lib/prism/node_inspector.rb",
|
83
83
|
"lib/prism/node.rb",
|
84
84
|
"lib/prism/pack.rb",
|
85
85
|
"lib/prism/parse_result.rb",
|
86
86
|
"lib/prism/parse_result/comments.rb",
|
87
87
|
"lib/prism/parse_result/newlines.rb",
|
88
88
|
"lib/prism/pattern.rb",
|
89
|
-
"lib/prism/polyfill/
|
89
|
+
"lib/prism/polyfill/byteindex.rb",
|
90
|
+
"lib/prism/polyfill/unpack1.rb",
|
90
91
|
"lib/prism/reflection.rb",
|
91
92
|
"lib/prism/serialize.rb",
|
92
93
|
"lib/prism/translation.rb",
|
@@ -101,11 +102,42 @@ Gem::Specification.new do |spec|
|
|
101
102
|
"lib/prism/translation/ripper/shim.rb",
|
102
103
|
"lib/prism/translation/ruby_parser.rb",
|
103
104
|
"lib/prism/visitor.rb",
|
105
|
+
"prism.gemspec",
|
106
|
+
"rbi/prism.rbi",
|
107
|
+
"rbi/prism/compiler.rbi",
|
108
|
+
"rbi/prism/inspect_visitor.rbi",
|
109
|
+
"rbi/prism/node_ext.rbi",
|
110
|
+
"rbi/prism/node.rbi",
|
111
|
+
"rbi/prism/parse_result.rbi",
|
112
|
+
"rbi/prism/reflection.rbi",
|
113
|
+
"rbi/prism/translation/parser.rbi",
|
114
|
+
"rbi/prism/translation/parser33.rbi",
|
115
|
+
"rbi/prism/translation/parser34.rbi",
|
116
|
+
"rbi/prism/translation/ripper.rbi",
|
117
|
+
"rbi/prism/visitor.rbi",
|
118
|
+
"sig/prism.rbs",
|
119
|
+
"sig/prism/compiler.rbs",
|
120
|
+
"sig/prism/dispatcher.rbs",
|
121
|
+
"sig/prism/dot_visitor.rbs",
|
122
|
+
"sig/prism/dsl.rbs",
|
123
|
+
"sig/prism/inspect_visitor.rbs",
|
124
|
+
"sig/prism/lex_compat.rbs",
|
125
|
+
"sig/prism/mutation_compiler.rbs",
|
126
|
+
"sig/prism/node_ext.rbs",
|
127
|
+
"sig/prism/node.rbs",
|
128
|
+
"sig/prism/pack.rbs",
|
129
|
+
"sig/prism/parse_result.rbs",
|
130
|
+
"sig/prism/pattern.rbs",
|
131
|
+
"sig/prism/reflection.rbs",
|
132
|
+
"sig/prism/serialize.rbs",
|
133
|
+
"sig/prism/visitor.rbs",
|
104
134
|
"src/diagnostic.c",
|
105
135
|
"src/encoding.c",
|
106
136
|
"src/node.c",
|
137
|
+
"src/options.c",
|
107
138
|
"src/pack.c",
|
108
139
|
"src/prettyprint.c",
|
140
|
+
"src/prism.c",
|
109
141
|
"src/regexp.c",
|
110
142
|
"src/serialize.c",
|
111
143
|
"src/static_literals.c",
|
@@ -117,43 +149,10 @@ Gem::Specification.new do |spec|
|
|
117
149
|
"src/util/pm_list.c",
|
118
150
|
"src/util/pm_memchr.c",
|
119
151
|
"src/util/pm_newline_list.c",
|
120
|
-
"src/util/pm_string.c",
|
121
152
|
"src/util/pm_string_list.c",
|
153
|
+
"src/util/pm_string.c",
|
122
154
|
"src/util/pm_strncasecmp.c",
|
123
|
-
"src/util/pm_strpbrk.c"
|
124
|
-
"src/options.c",
|
125
|
-
"src/prism.c",
|
126
|
-
"prism.gemspec",
|
127
|
-
"sig/prism.rbs",
|
128
|
-
"sig/prism/compiler.rbs",
|
129
|
-
"sig/prism/dispatcher.rbs",
|
130
|
-
"sig/prism/dot_visitor.rbs",
|
131
|
-
"sig/prism/dsl.rbs",
|
132
|
-
"sig/prism/mutation_compiler.rbs",
|
133
|
-
"sig/prism/node.rbs",
|
134
|
-
"sig/prism/node_ext.rbs",
|
135
|
-
"sig/prism/pack.rbs",
|
136
|
-
"sig/prism/parse_result.rbs",
|
137
|
-
"sig/prism/pattern.rbs",
|
138
|
-
"sig/prism/reflection.rbs",
|
139
|
-
"sig/prism/serialize.rbs",
|
140
|
-
"sig/prism/visitor.rbs",
|
141
|
-
"rbi/prism.rbi",
|
142
|
-
"rbi/prism/compiler.rbi",
|
143
|
-
"rbi/prism/desugar_compiler.rbi",
|
144
|
-
"rbi/prism/mutation_compiler.rbi",
|
145
|
-
"rbi/prism/node_ext.rbi",
|
146
|
-
"rbi/prism/node.rbi",
|
147
|
-
"rbi/prism/parse_result.rbi",
|
148
|
-
"rbi/prism/reflection.rbi",
|
149
|
-
"rbi/prism/translation/parser.rbi",
|
150
|
-
"rbi/prism/translation/parser/compiler.rbi",
|
151
|
-
"rbi/prism/translation/parser33.rbi",
|
152
|
-
"rbi/prism/translation/parser34.rbi",
|
153
|
-
"rbi/prism/translation/ripper.rbi",
|
154
|
-
"rbi/prism/translation/ripper/ripper_compiler.rbi",
|
155
|
-
"rbi/prism/translation/ruby_parser.rbi",
|
156
|
-
"rbi/prism/visitor.rbi"
|
155
|
+
"src/util/pm_strpbrk.c"
|
157
156
|
]
|
158
157
|
|
159
158
|
spec.extensions = ["ext/prism/extconf.rb"]
|
data/rbi/prism/compiler.rbi
CHANGED
@@ -1,14 +1,12 @@
|
|
1
1
|
# typed: strict
|
2
2
|
|
3
3
|
class Prism::Compiler
|
4
|
-
|
5
|
-
|
6
|
-
sig { params(node: T.nilable(Prism::Node)).returns(T.nilable(Result)) }
|
4
|
+
sig { params(node: T.nilable(Prism::Node)).returns(T.untyped) }
|
7
5
|
def visit(node); end
|
8
6
|
|
9
|
-
sig { params(nodes: T::Array[T.nilable(Prism::Node)]).returns(T::Array[T.
|
7
|
+
sig { params(nodes: T::Array[T.nilable(Prism::Node)]).returns(T::Array[T.untyped]) }
|
10
8
|
def visit_all(nodes); end
|
11
9
|
|
12
|
-
sig { params(node: Prism::Node).returns(T::Array[T.
|
10
|
+
sig { params(node: Prism::Node).returns(T::Array[T.untyped]) }
|
13
11
|
def visit_child_nodes(node); end
|
14
12
|
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# typed: strict
|
2
|
+
|
3
|
+
class Prism::InspectVisitor < Prism::Visitor
|
4
|
+
sig { params(indent: String).void }
|
5
|
+
def initialize(indent = ""); end
|
6
|
+
|
7
|
+
sig { params(node: Prism::Node).returns(String) }
|
8
|
+
def self.compose(node); end
|
9
|
+
|
10
|
+
sig { returns(String) }
|
11
|
+
def compose; end
|
12
|
+
end
|