ruby_mod_kit 0.0.4 → 0.0.5
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/README.md +89 -0
- data/lib/ruby_mod_kit/core_ext/eval.rb +6 -10
- data/lib/ruby_mod_kit/corrector.rb +3 -0
- data/lib/ruby_mod_kit/corrector_manager.rb +10 -6
- data/lib/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_mission.rb +1 -1
- data/lib/ruby_mod_kit/feature/overload/overload_mission.rb +2 -3
- data/lib/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rb +56 -0
- data/lib/ruby_mod_kit/feature/type/check/arguments.rb +23 -0
- data/lib/ruby_mod_kit/feature/type/instance_variable_colon_corrector.rb +9 -4
- data/lib/ruby_mod_kit/feature/type/parameter_arrow_corrector.rb +27 -5
- data/lib/ruby_mod_kit/feature/type/rbs_inline/type_instance_variable_mission.rb +3 -2
- data/lib/ruby_mod_kit/feature/type/rbs_inline/type_overload_mission.rb +1 -2
- data/lib/ruby_mod_kit/feature/type/rbs_inline/type_parameter_mission.rb +5 -4
- data/lib/ruby_mod_kit/feature/type/rbs_inline/type_return_mission.rb +1 -1
- data/lib/ruby_mod_kit/feature/type/return_value_colon_corrector.rb +1 -0
- data/lib/ruby_mod_kit/feature/type/type_attr_mission.rb +3 -9
- data/lib/ruby_mod_kit/feature/type/yard/type_parameter_mission.rb +35 -0
- data/lib/ruby_mod_kit/feature/type/yard/type_return_mission.rb +30 -0
- data/lib/ruby_mod_kit/feature/type/yard.rb +31 -0
- data/lib/ruby_mod_kit/generation.rb +55 -20
- data/lib/ruby_mod_kit/memo/ivar_memo.rb +2 -0
- data/lib/ruby_mod_kit/memo/parameter_memo.rb +4 -2
- data/lib/ruby_mod_kit/memo_pad.rb +6 -0
- data/lib/ruby_mod_kit/mission.rb +0 -4
- data/lib/ruby_mod_kit/node/base_node.rb +11 -2
- data/lib/ruby_mod_kit/node/begin_node.rb +31 -0
- data/lib/ruby_mod_kit/node/parameter_node.rb +2 -2
- data/lib/ruby_mod_kit/node/wrap.rb +3 -1
- data/lib/ruby_mod_kit/node.rb +1 -0
- data/lib/ruby_mod_kit/version.rb +1 -1
- data/lib/ruby_mod_kit.rb +0 -5
- data/sig/generated/ruby_mod_kit/core_ext/eval.rbs +4 -2
- data/sig/generated/ruby_mod_kit/corrector.rbs +3 -0
- data/sig/generated/ruby_mod_kit/corrector_manager.rbs +1 -1
- data/sig/generated/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rbs +16 -0
- data/sig/generated/ruby_mod_kit/feature/type/check/arguments.rbs +15 -0
- data/sig/generated/ruby_mod_kit/feature/type/parameter_arrow_corrector.rbs +5 -0
- data/sig/generated/ruby_mod_kit/feature/type/yard/type_parameter_mission.rbs +16 -0
- data/sig/generated/ruby_mod_kit/feature/type/yard/type_return_mission.rbs +16 -0
- data/sig/generated/ruby_mod_kit/feature/type/yard.rbs +17 -0
- data/sig/generated/ruby_mod_kit/generation.rbs +34 -10
- data/sig/generated/ruby_mod_kit/memo/ivar_memo.rbs +4 -0
- data/sig/generated/ruby_mod_kit/memo/parameter_memo.rbs +6 -2
- data/sig/generated/ruby_mod_kit/memo_pad.rbs +4 -0
- data/sig/generated/ruby_mod_kit/mission.rbs +0 -4
- data/sig/generated/ruby_mod_kit/node/base_node.rbs +5 -1
- data/sig/generated/ruby_mod_kit/node/begin_node.rbs +26 -0
- data/sig/generated/ruby_mod_kit/node/parameter_node.rbs +1 -1
- metadata +14 -2
|
@@ -18,6 +18,7 @@ module RubyModKit
|
|
|
18
18
|
# @rbs @errors: Array[Prism::ParseError]
|
|
19
19
|
# @rbs @lines: Array[String]
|
|
20
20
|
# @rbs @offsets: Array[Integer]
|
|
21
|
+
# @rbs @source: String
|
|
21
22
|
|
|
22
23
|
attr_reader :script #: String
|
|
23
24
|
attr_reader :memo_pad #: MemoPad
|
|
@@ -51,6 +52,7 @@ module RubyModKit
|
|
|
51
52
|
@errors = parse_result.errors
|
|
52
53
|
@lines = parse_result.source.lines
|
|
53
54
|
@offsets = parse_result.source.offsets
|
|
55
|
+
@source = @script.dup
|
|
54
56
|
@root_node = Node::ProgramNode.new(parse_result.value)
|
|
55
57
|
init_missions
|
|
56
58
|
end
|
|
@@ -78,9 +80,6 @@ module RubyModKit
|
|
|
78
80
|
else
|
|
79
81
|
perform_corrector
|
|
80
82
|
end
|
|
81
|
-
@missions.each do |mission|
|
|
82
|
-
mission.succ(@offset_diff)
|
|
83
|
-
end
|
|
84
83
|
@memo_pad.succ(@offset_diff)
|
|
85
84
|
|
|
86
85
|
Generation.new(
|
|
@@ -115,18 +114,10 @@ module RubyModKit
|
|
|
115
114
|
@offset_diff.insert(src_offset, diff)
|
|
116
115
|
end
|
|
117
116
|
|
|
118
|
-
# @rbs src_range: Range[Integer]
|
|
117
|
+
# @rbs src_range: Range[Integer | nil]
|
|
119
118
|
# @rbs return: String
|
|
120
119
|
def [](src_range)
|
|
121
|
-
|
|
122
|
-
@script[dst_range] || raise(RubyModKit::Error, "Invalid range")
|
|
123
|
-
end
|
|
124
|
-
|
|
125
|
-
# @rbs offset: Integer
|
|
126
|
-
# @rbs return: String
|
|
127
|
-
def line_by_offset(offset)
|
|
128
|
-
offset = @offset_diff[offset]
|
|
129
|
-
(@script.match(/.*\n?/, offset) && Regexp.last_match(0)) || raise(RubyModKit::Error)
|
|
120
|
+
@source[src_range] || raise(RubyModKit::Error, "Invalid range")
|
|
130
121
|
end
|
|
131
122
|
|
|
132
123
|
# @rbs (Integer) -> String
|
|
@@ -146,7 +137,7 @@ module RubyModKit
|
|
|
146
137
|
# @rbs line_num: Integer
|
|
147
138
|
# @rbs return: String
|
|
148
139
|
def line__overload0(line_num)
|
|
149
|
-
|
|
140
|
+
@lines[line_num] || raise(RubyModKit::Error)
|
|
150
141
|
end
|
|
151
142
|
|
|
152
143
|
# @rbs node: Node::BaseNode
|
|
@@ -159,29 +150,73 @@ module RubyModKit
|
|
|
159
150
|
# @rbs return: String
|
|
160
151
|
def line__overload2(parse_error)
|
|
161
152
|
line(parse_error.location.start_line - 1)
|
|
153
|
+
rescue RubyModKit::Error
|
|
154
|
+
""
|
|
162
155
|
end
|
|
163
156
|
|
|
164
157
|
# @rbs (Integer) -> (Integer | nil)
|
|
158
|
+
# | (Node::BaseNode) -> (Integer | nil)
|
|
159
|
+
# | (Node::BaseNode, Integer) -> (Integer | nil)
|
|
165
160
|
# | (Prism::ParseError) -> (Integer | nil)
|
|
166
|
-
def
|
|
161
|
+
def line_offset(*args)
|
|
167
162
|
case args
|
|
168
163
|
in [Integer]
|
|
169
|
-
|
|
164
|
+
line_offset__overload0(*args)
|
|
165
|
+
in [Node::BaseNode]
|
|
166
|
+
line_offset__overload1(*args)
|
|
167
|
+
in [Node::BaseNode, Integer]
|
|
168
|
+
line_offset__overload2(*args)
|
|
170
169
|
in [Prism::ParseError]
|
|
171
|
-
|
|
170
|
+
line_offset__overload3(*args)
|
|
172
171
|
end
|
|
173
172
|
end
|
|
174
173
|
|
|
175
174
|
# @rbs line_num: Integer
|
|
176
175
|
# @rbs return: Integer | nil
|
|
177
|
-
def
|
|
176
|
+
def line_offset__overload0(line_num)
|
|
178
177
|
@offsets[line_num]
|
|
179
178
|
end
|
|
180
179
|
|
|
180
|
+
# @rbs node: Node::BaseNode
|
|
181
|
+
# @rbs return: Integer | nil
|
|
182
|
+
def line_offset__overload1(node)
|
|
183
|
+
line_offset(node, 0)
|
|
184
|
+
end
|
|
185
|
+
|
|
186
|
+
# @rbs node: Node::BaseNode
|
|
187
|
+
# @rbs line_offset: Integer
|
|
188
|
+
# @rbs return: Integer | nil
|
|
189
|
+
def line_offset__overload2(node, line_offset)
|
|
190
|
+
line_offset(node.location.start_line - 1 + line_offset)
|
|
191
|
+
end
|
|
192
|
+
|
|
181
193
|
# @rbs parse_error: Prism::ParseError
|
|
182
194
|
# @rbs return: Integer | nil
|
|
183
|
-
def
|
|
184
|
-
|
|
195
|
+
def line_offset__overload3(parse_error)
|
|
196
|
+
line_offset(parse_error.location.start_line - 1)
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
# @rbs (Integer) -> String
|
|
200
|
+
# | (Node::BaseNode) -> String
|
|
201
|
+
def line_indent(*args)
|
|
202
|
+
case args
|
|
203
|
+
in [Integer]
|
|
204
|
+
line_indent__overload0(*args)
|
|
205
|
+
in [Node::BaseNode]
|
|
206
|
+
line_indent__overload1(*args)
|
|
207
|
+
end
|
|
208
|
+
end
|
|
209
|
+
|
|
210
|
+
# @rbs line_num: Integer
|
|
211
|
+
# @rbs return: String
|
|
212
|
+
def line_indent__overload0(line_num)
|
|
213
|
+
line(line_num)[/\A[ \t]*/] || ""
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
# @rbs node: Node::BaseNode
|
|
217
|
+
# @rbs return: String
|
|
218
|
+
def line_indent__overload1(node)
|
|
219
|
+
line_indent(node.location.start_line - 1)
|
|
185
220
|
end
|
|
186
221
|
|
|
187
222
|
# @rbs return: void
|
|
@@ -12,12 +12,14 @@ module RubyModKit
|
|
|
12
12
|
# @rbs @indent: String
|
|
13
13
|
# @rbs @name: Symbol
|
|
14
14
|
# @rbs @visibility: nil | Symbol
|
|
15
|
+
# @rbs @separator: String
|
|
15
16
|
|
|
16
17
|
attr_reader :type #: nil | String
|
|
17
18
|
attr_reader :attr_kind #: nil | Symbol
|
|
18
19
|
attr_accessor :offset #: nil | Integer
|
|
19
20
|
attr_accessor :indent #: String
|
|
20
21
|
attr_accessor :visibility #: nil | Symbol
|
|
22
|
+
attr_accessor :separator #: String
|
|
21
23
|
|
|
22
24
|
# @rbs name: Symbol
|
|
23
25
|
# @rbs return: void
|
|
@@ -8,11 +8,13 @@ module RubyModKit
|
|
|
8
8
|
class ParameterMemo < OffsetMemo
|
|
9
9
|
# @rbs @type: String
|
|
10
10
|
# @rbs @ivar_parameter: bool
|
|
11
|
-
# @rbs @qualifier: String
|
|
11
|
+
# @rbs @qualifier: String | nil
|
|
12
|
+
# @rbs @name: Symbol
|
|
12
13
|
|
|
13
14
|
attr_reader :type #: String
|
|
14
15
|
attr_accessor :ivar_parameter #: bool
|
|
15
|
-
attr_accessor :qualifier #: String
|
|
16
|
+
attr_accessor :qualifier #: String | nil
|
|
17
|
+
attr_accessor :name #: Symbol
|
|
16
18
|
|
|
17
19
|
UNTYPED = "untyped"
|
|
18
20
|
|
data/lib/ruby_mod_kit/mission.rb
CHANGED
|
@@ -93,10 +93,14 @@ module RubyModKit
|
|
|
93
93
|
end
|
|
94
94
|
|
|
95
95
|
# @rbs offset: Integer
|
|
96
|
+
# @rbs allowed: Array[Class] | nil
|
|
96
97
|
# @rbs return: Node::DefParentNode | nil
|
|
97
|
-
def def_parent_node_at(offset)
|
|
98
|
+
def def_parent_node_at(offset, allowed: nil)
|
|
98
99
|
node = node_at(offset) || return
|
|
99
|
-
[node, *node.ancestors].each
|
|
100
|
+
[node, *node.ancestors].each do |ancestor_node|
|
|
101
|
+
return ancestor_node if ancestor_node.is_a?(Node::DefParentNode)
|
|
102
|
+
return nil if allowed && !allowed.include?(ancestor_node.class)
|
|
103
|
+
end
|
|
100
104
|
nil
|
|
101
105
|
end
|
|
102
106
|
|
|
@@ -111,6 +115,11 @@ module RubyModKit
|
|
|
111
115
|
location.start_offset
|
|
112
116
|
end
|
|
113
117
|
|
|
118
|
+
# @rbs return: String
|
|
119
|
+
def slice
|
|
120
|
+
location.slice
|
|
121
|
+
end
|
|
122
|
+
|
|
114
123
|
# @rbs return: String
|
|
115
124
|
def inspect
|
|
116
125
|
str = +"#<#{self.class} "
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# rbs_inline: enabled
|
|
4
|
+
|
|
5
|
+
module RubyModKit
|
|
6
|
+
module Node
|
|
7
|
+
# Transpiler program node
|
|
8
|
+
class BeginNode < Node::BaseNode
|
|
9
|
+
# @rbs @prism_node: Prism::BeginNode
|
|
10
|
+
# @rbs @parent: Node::BaseNode
|
|
11
|
+
# @rbs @prev: Node::BaseNode | nil
|
|
12
|
+
|
|
13
|
+
private attr_reader :prism_node #: Prism::BeginNode
|
|
14
|
+
attr_reader :parent #: Node::BaseNode
|
|
15
|
+
attr_reader :prev #: Node::BaseNode | nil
|
|
16
|
+
|
|
17
|
+
# @rbs prism_node: Prism::BeginNode
|
|
18
|
+
# @rbs parent: Node::BaseNode
|
|
19
|
+
# @rbs prev: Node::BaseNode | nil
|
|
20
|
+
# @rbs return: void
|
|
21
|
+
def initialize(prism_node, parent:, prev: nil)
|
|
22
|
+
@prism_node = prism_node
|
|
23
|
+
@parent = parent
|
|
24
|
+
@prev = prev
|
|
25
|
+
raise RubyModKit::Error unless prism_node.is_a?(Prism::BeginNode)
|
|
26
|
+
|
|
27
|
+
super()
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -13,7 +13,7 @@ module RubyModKit
|
|
|
13
13
|
# @rbs!
|
|
14
14
|
# type prism_node = Prism::RequiredParameterNode | Prism::OptionalKeywordParameterNode
|
|
15
15
|
# | Prism::OptionalParameterNode | Prism::RequiredKeywordParameterNode
|
|
16
|
-
# | Prism::RestParameterNode
|
|
16
|
+
# | Prism::RestParameterNode | Prism::BlockParameterNode
|
|
17
17
|
|
|
18
18
|
private attr_reader :prism_node #: prism_node
|
|
19
19
|
attr_reader :parent #: Node::BaseNode
|
|
@@ -30,7 +30,7 @@ module RubyModKit
|
|
|
30
30
|
case prism_node
|
|
31
31
|
when Prism::RequiredParameterNode, Prism::OptionalKeywordParameterNode,
|
|
32
32
|
Prism::OptionalParameterNode, Prism::RequiredKeywordParameterNode,
|
|
33
|
-
Prism::RestParameterNode
|
|
33
|
+
Prism::RestParameterNode, Prism::BlockParameterNode
|
|
34
34
|
super()
|
|
35
35
|
else
|
|
36
36
|
raise RubyModKit::Error, "unexpected prism node #{prism_node.class}"
|
|
@@ -20,6 +20,8 @@ module RubyModKit
|
|
|
20
20
|
# @rbs return: Node::BaseNode
|
|
21
21
|
def wrap(prism_node, parent:, prev: nil)
|
|
22
22
|
case prism_node
|
|
23
|
+
when Prism::BeginNode
|
|
24
|
+
Node::BeginNode.new(prism_node, parent: parent, prev: prev)
|
|
23
25
|
when Prism::CallNode
|
|
24
26
|
Node::CallNode.new(prism_node, parent: parent, prev: prev)
|
|
25
27
|
when Prism::DefNode
|
|
@@ -28,7 +30,7 @@ module RubyModKit
|
|
|
28
30
|
Node::DefParentNode.new(prism_node, parent: parent, prev: prev)
|
|
29
31
|
when Prism::RequiredParameterNode, Prism::OptionalKeywordParameterNode,
|
|
30
32
|
Prism::OptionalParameterNode, Prism::RequiredKeywordParameterNode,
|
|
31
|
-
Prism::RestParameterNode
|
|
33
|
+
Prism::RestParameterNode, Prism::BlockParameterNode
|
|
32
34
|
Node::ParameterNode.new(prism_node, parent: parent, prev: prev)
|
|
33
35
|
when Prism::StatementsNode
|
|
34
36
|
Node::StatementsNode.new(prism_node, parent: parent, prev: prev)
|
data/lib/ruby_mod_kit/node.rb
CHANGED
data/lib/ruby_mod_kit/version.rb
CHANGED
data/lib/ruby_mod_kit.rb
CHANGED
|
@@ -89,8 +89,3 @@ require_relative "ruby_mod_kit/memo_pad"
|
|
|
89
89
|
require_relative "ruby_mod_kit/mission"
|
|
90
90
|
require_relative "ruby_mod_kit/node"
|
|
91
91
|
require_relative "ruby_mod_kit/offset_diff"
|
|
92
|
-
|
|
93
|
-
require_relative "ruby_mod_kit/feature/instance_variable_parameter"
|
|
94
|
-
require_relative "ruby_mod_kit/feature/overload"
|
|
95
|
-
require_relative "ruby_mod_kit/feature/type"
|
|
96
|
-
require_relative "ruby_mod_kit/feature/type/rbs_inline"
|
|
@@ -6,10 +6,12 @@ module RubyModKit
|
|
|
6
6
|
# the extension for eval
|
|
7
7
|
module Eval
|
|
8
8
|
# @rbs expr: String
|
|
9
|
-
# @rbs
|
|
9
|
+
# @rbs binding: Binding
|
|
10
|
+
# @rbs fname: String
|
|
11
|
+
# @rbs lineno: Integer
|
|
10
12
|
# @rbs transpile: bool
|
|
11
13
|
# @rbs return: Object
|
|
12
|
-
def self?.eval: (String expr,
|
|
14
|
+
def self?.eval: (String expr, ?Binding binding, ?String fname, ?Integer lineno, ?transpile: bool) -> Object
|
|
13
15
|
end
|
|
14
16
|
end
|
|
15
17
|
|
data/sig/generated/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rbs
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Generated from lib/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module RubyModKit
|
|
4
|
+
class Feature
|
|
5
|
+
class Type
|
|
6
|
+
module Check
|
|
7
|
+
# The mission to add magic comment
|
|
8
|
+
class AddArgumentsCheckerMission < Mission
|
|
9
|
+
# @rbs generation: Generation
|
|
10
|
+
# @rbs return: bool
|
|
11
|
+
def perform: (Generation generation) -> bool
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Generated from lib/ruby_mod_kit/feature/type/check/arguments.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module RubyModKit
|
|
4
|
+
class Feature
|
|
5
|
+
class Type
|
|
6
|
+
module Check
|
|
7
|
+
# namespace for arguments type checker
|
|
8
|
+
class Arguments < Feature
|
|
9
|
+
# @rbs return: Array[Mission]
|
|
10
|
+
def create_missions: () -> Array[Mission]
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -5,9 +5,14 @@ module RubyModKit
|
|
|
5
5
|
class Type
|
|
6
6
|
# the class to correct `def foo(Bar => bar, *Buz => buz)` -> `def foo(bar, *buz)`
|
|
7
7
|
class ParameterArrowCorrector < Corrector
|
|
8
|
+
@last_parameter_offsets: Set[Integer]
|
|
9
|
+
|
|
8
10
|
# @rbs return: Array[Symbol]
|
|
9
11
|
def correctable_error_types: () -> Array[Symbol]
|
|
10
12
|
|
|
13
|
+
# @rbs return: void
|
|
14
|
+
def setup: () -> void
|
|
15
|
+
|
|
11
16
|
# @rbs parse_error: Prism::ParseError
|
|
12
17
|
# @rbs generation: Generation
|
|
13
18
|
# @rbs return: void
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Generated from lib/ruby_mod_kit/feature/type/yard/type_parameter_mission.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module RubyModKit
|
|
4
|
+
class Feature
|
|
5
|
+
class Type
|
|
6
|
+
class Yard
|
|
7
|
+
# The mission for parameter types
|
|
8
|
+
class TypeParameterMission < Mission
|
|
9
|
+
# @rbs generation: Generation
|
|
10
|
+
# @rbs return: bool
|
|
11
|
+
def perform: (Generation generation) -> bool
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Generated from lib/ruby_mod_kit/feature/type/yard/type_return_mission.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module RubyModKit
|
|
4
|
+
class Feature
|
|
5
|
+
class Type
|
|
6
|
+
class Yard
|
|
7
|
+
# The mission for return value type
|
|
8
|
+
class TypeReturnMission < Mission
|
|
9
|
+
# @rbs generation: Generation
|
|
10
|
+
# @rbs return: bool
|
|
11
|
+
def perform: (Generation generation) -> bool
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Generated from lib/ruby_mod_kit/feature/type/yard.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module RubyModKit
|
|
4
|
+
class Feature
|
|
5
|
+
class Type
|
|
6
|
+
# namespace for type with rbs-line feature
|
|
7
|
+
class Yard < Feature
|
|
8
|
+
# @rbs return: Array[Mission]
|
|
9
|
+
def create_missions: () -> Array[Mission]
|
|
10
|
+
|
|
11
|
+
# @rbs type: String
|
|
12
|
+
# @rbs return: String
|
|
13
|
+
def self.rbs2yard: (String type) -> String
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -29,6 +29,8 @@ module RubyModKit
|
|
|
29
29
|
|
|
30
30
|
@offsets: Array[Integer]
|
|
31
31
|
|
|
32
|
+
@source: String
|
|
33
|
+
|
|
32
34
|
attr_reader script: String
|
|
33
35
|
|
|
34
36
|
attr_reader memo_pad: MemoPad
|
|
@@ -73,13 +75,9 @@ module RubyModKit
|
|
|
73
75
|
# @rbs return: String
|
|
74
76
|
def []=: (Integer src_offset, Integer length, String str) -> String
|
|
75
77
|
|
|
76
|
-
# @rbs src_range: Range[Integer]
|
|
77
|
-
# @rbs return: String
|
|
78
|
-
def []: (Range[Integer] src_range) -> String
|
|
79
|
-
|
|
80
|
-
# @rbs offset: Integer
|
|
78
|
+
# @rbs src_range: Range[Integer | nil]
|
|
81
79
|
# @rbs return: String
|
|
82
|
-
def
|
|
80
|
+
def []: (Range[Integer | nil] src_range) -> String
|
|
83
81
|
|
|
84
82
|
# @rbs (Integer) -> String
|
|
85
83
|
# | (Node::BaseNode) -> String
|
|
@@ -101,17 +99,43 @@ module RubyModKit
|
|
|
101
99
|
def line__overload2: (Prism::ParseError parse_error) -> String
|
|
102
100
|
|
|
103
101
|
# @rbs (Integer) -> (Integer | nil)
|
|
102
|
+
# | (Node::BaseNode) -> (Integer | nil)
|
|
103
|
+
# | (Node::BaseNode, Integer) -> (Integer | nil)
|
|
104
104
|
# | (Prism::ParseError) -> (Integer | nil)
|
|
105
|
-
def
|
|
106
|
-
|
|
105
|
+
def line_offset: (Integer) -> (Integer | nil)
|
|
106
|
+
| (Node::BaseNode) -> (Integer | nil)
|
|
107
|
+
| (Node::BaseNode, Integer) -> (Integer | nil)
|
|
108
|
+
| (Prism::ParseError) -> (Integer | nil)
|
|
107
109
|
|
|
108
110
|
# @rbs line_num: Integer
|
|
109
111
|
# @rbs return: Integer | nil
|
|
110
|
-
def
|
|
112
|
+
def line_offset__overload0: (Integer line_num) -> (Integer | nil)
|
|
113
|
+
|
|
114
|
+
# @rbs node: Node::BaseNode
|
|
115
|
+
# @rbs return: Integer | nil
|
|
116
|
+
def line_offset__overload1: (Node::BaseNode node) -> (Integer | nil)
|
|
117
|
+
|
|
118
|
+
# @rbs node: Node::BaseNode
|
|
119
|
+
# @rbs line_offset: Integer
|
|
120
|
+
# @rbs return: Integer | nil
|
|
121
|
+
def line_offset__overload2: (Node::BaseNode node, Integer line_offset) -> (Integer | nil)
|
|
111
122
|
|
|
112
123
|
# @rbs parse_error: Prism::ParseError
|
|
113
124
|
# @rbs return: Integer | nil
|
|
114
|
-
def
|
|
125
|
+
def line_offset__overload3: (Prism::ParseError parse_error) -> (Integer | nil)
|
|
126
|
+
|
|
127
|
+
# @rbs (Integer) -> String
|
|
128
|
+
# | (Node::BaseNode) -> String
|
|
129
|
+
def line_indent: (Integer) -> String
|
|
130
|
+
| (Node::BaseNode) -> String
|
|
131
|
+
|
|
132
|
+
# @rbs line_num: Integer
|
|
133
|
+
# @rbs return: String
|
|
134
|
+
def line_indent__overload0: (Integer line_num) -> String
|
|
135
|
+
|
|
136
|
+
# @rbs node: Node::BaseNode
|
|
137
|
+
# @rbs return: String
|
|
138
|
+
def line_indent__overload1: (Node::BaseNode node) -> String
|
|
115
139
|
|
|
116
140
|
# @rbs return: void
|
|
117
141
|
def perform_corrector: () -> void
|
|
@@ -16,6 +16,8 @@ module RubyModKit
|
|
|
16
16
|
|
|
17
17
|
@visibility: nil | Symbol
|
|
18
18
|
|
|
19
|
+
@separator: String
|
|
20
|
+
|
|
19
21
|
attr_reader type: nil | String
|
|
20
22
|
|
|
21
23
|
attr_reader attr_kind: nil | Symbol
|
|
@@ -26,6 +28,8 @@ module RubyModKit
|
|
|
26
28
|
|
|
27
29
|
attr_accessor visibility: nil | Symbol
|
|
28
30
|
|
|
31
|
+
attr_accessor separator: String
|
|
32
|
+
|
|
29
33
|
# @rbs name: Symbol
|
|
30
34
|
# @rbs return: void
|
|
31
35
|
def initialize: (Symbol name) -> void
|
|
@@ -8,13 +8,17 @@ module RubyModKit
|
|
|
8
8
|
|
|
9
9
|
@ivar_parameter: bool
|
|
10
10
|
|
|
11
|
-
@qualifier: String
|
|
11
|
+
@qualifier: String | nil
|
|
12
|
+
|
|
13
|
+
@name: Symbol
|
|
12
14
|
|
|
13
15
|
attr_reader type: String
|
|
14
16
|
|
|
15
17
|
attr_accessor ivar_parameter: bool
|
|
16
18
|
|
|
17
|
-
attr_accessor qualifier: String
|
|
19
|
+
attr_accessor qualifier: String | nil
|
|
20
|
+
|
|
21
|
+
attr_accessor name: Symbol
|
|
18
22
|
|
|
19
23
|
UNTYPED: ::String
|
|
20
24
|
|
|
@@ -46,5 +46,9 @@ module RubyModKit
|
|
|
46
46
|
# @rbs node: Node::BaseNode
|
|
47
47
|
# @rbs return: Memo::ParameterMemo
|
|
48
48
|
def parameter_memo: (Node::BaseNode node) -> Memo::ParameterMemo
|
|
49
|
+
|
|
50
|
+
# @rbs &block: (Memo::ParameterMemo) -> void
|
|
51
|
+
# @rbs return: void
|
|
52
|
+
def each_parameter_memo: () { (Memo::ParameterMemo) -> void } -> void
|
|
49
53
|
end
|
|
50
54
|
end
|
|
@@ -51,8 +51,9 @@ module RubyModKit
|
|
|
51
51
|
def parameter_node_at: (Integer offset) -> (Node::ParameterNode | nil)
|
|
52
52
|
|
|
53
53
|
# @rbs offset: Integer
|
|
54
|
+
# @rbs allowed: Array[Class] | nil
|
|
54
55
|
# @rbs return: Node::DefParentNode | nil
|
|
55
|
-
def def_parent_node_at: (Integer offset) -> (Node::DefParentNode | nil)
|
|
56
|
+
def def_parent_node_at: (Integer offset, ?allowed: Array[Class] | nil) -> (Node::DefParentNode | nil)
|
|
56
57
|
|
|
57
58
|
# @rbs offset: Integer
|
|
58
59
|
# @rbs return: bool
|
|
@@ -61,6 +62,9 @@ module RubyModKit
|
|
|
61
62
|
# @rbs return: Integer
|
|
62
63
|
def offset: () -> Integer
|
|
63
64
|
|
|
65
|
+
# @rbs return: String
|
|
66
|
+
def slice: () -> String
|
|
67
|
+
|
|
64
68
|
# @rbs return: String
|
|
65
69
|
def inspect: () -> String
|
|
66
70
|
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Generated from lib/ruby_mod_kit/node/begin_node.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module RubyModKit
|
|
4
|
+
module Node
|
|
5
|
+
# Transpiler program node
|
|
6
|
+
class BeginNode < Node::BaseNode
|
|
7
|
+
@prism_node: Prism::BeginNode
|
|
8
|
+
|
|
9
|
+
@parent: Node::BaseNode
|
|
10
|
+
|
|
11
|
+
@prev: Node::BaseNode | nil
|
|
12
|
+
|
|
13
|
+
attr_reader prism_node: Prism::BeginNode
|
|
14
|
+
|
|
15
|
+
attr_reader parent: Node::BaseNode
|
|
16
|
+
|
|
17
|
+
attr_reader prev: Node::BaseNode | nil
|
|
18
|
+
|
|
19
|
+
# @rbs prism_node: Prism::BeginNode
|
|
20
|
+
# @rbs parent: Node::BaseNode
|
|
21
|
+
# @rbs prev: Node::BaseNode | nil
|
|
22
|
+
# @rbs return: void
|
|
23
|
+
def initialize: (Prism::BeginNode prism_node, parent: Node::BaseNode, ?prev: Node::BaseNode | nil) -> void
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -10,7 +10,7 @@ module RubyModKit
|
|
|
10
10
|
|
|
11
11
|
@prev: Node::BaseNode | nil
|
|
12
12
|
|
|
13
|
-
type prism_node = Prism::RequiredParameterNode | Prism::OptionalKeywordParameterNode | Prism::OptionalParameterNode | Prism::RequiredKeywordParameterNode | Prism::RestParameterNode
|
|
13
|
+
type prism_node = Prism::RequiredParameterNode | Prism::OptionalKeywordParameterNode | Prism::OptionalParameterNode | Prism::RequiredKeywordParameterNode | Prism::RestParameterNode | Prism::BlockParameterNode
|
|
14
14
|
|
|
15
15
|
attr_reader prism_node: prism_node
|
|
16
16
|
|