ruby_mod_kit 0.0.5 → 0.0.6

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.
Files changed (108) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby_mod_kit.yml +1 -0
  3. data/.yardopts +3 -0
  4. data/examples/user.rb +4 -16
  5. data/lib/ruby_mod_kit/cli.rb +5 -0
  6. data/lib/ruby_mod_kit/config.rb +6 -1
  7. data/lib/ruby_mod_kit/core_ext/eval.rb +7 -0
  8. data/lib/ruby_mod_kit/core_ext/load.rb +10 -0
  9. data/lib/ruby_mod_kit/corrector.rb +5 -0
  10. data/lib/ruby_mod_kit/corrector_manager.rb +6 -0
  11. data/lib/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_corrector.rb +4 -0
  12. data/lib/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_mission.rb +2 -0
  13. data/lib/ruby_mod_kit/feature/instance_variable_parameter.rb +2 -0
  14. data/lib/ruby_mod_kit/feature/overload/overload_mission.rb +42 -10
  15. data/lib/ruby_mod_kit/feature/overload.rb +1 -0
  16. data/lib/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rb +2 -0
  17. data/lib/ruby_mod_kit/feature/type/check/arguments.rb +2 -0
  18. data/lib/ruby_mod_kit/feature/type/instance_variable_colon_corrector.rb +4 -0
  19. data/lib/ruby_mod_kit/feature/type/parameter_arrow_corrector.rb +14 -0
  20. data/lib/ruby_mod_kit/feature/type/rbs_inline/add_magic_comment_mission.rb +3 -0
  21. data/lib/ruby_mod_kit/feature/type/rbs_inline/type_attr_mission.rb +2 -0
  22. data/lib/ruby_mod_kit/feature/type/rbs_inline/type_instance_variable_mission.rb +2 -0
  23. data/lib/ruby_mod_kit/feature/type/rbs_inline/type_overload_mission.rb +2 -0
  24. data/lib/ruby_mod_kit/feature/type/rbs_inline/type_parameter_mission.rb +2 -0
  25. data/lib/ruby_mod_kit/feature/type/rbs_inline/type_return_mission.rb +2 -0
  26. data/lib/ruby_mod_kit/feature/type/rbs_inline.rb +1 -0
  27. data/lib/ruby_mod_kit/feature/type/return_value_colon_corrector.rb +4 -0
  28. data/lib/ruby_mod_kit/feature/type/type_attr_mission.rb +3 -0
  29. data/lib/ruby_mod_kit/feature/type/yard/type_parameter_mission.rb +2 -0
  30. data/lib/ruby_mod_kit/feature/type/yard/type_return_mission.rb +2 -0
  31. data/lib/ruby_mod_kit/feature/type/yard.rb +3 -0
  32. data/lib/ruby_mod_kit/feature/type.rb +2 -0
  33. data/lib/ruby_mod_kit/feature.rb +2 -0
  34. data/lib/ruby_mod_kit/generation.rb +54 -71
  35. data/lib/ruby_mod_kit/memo/def_parent_memo.rb +6 -0
  36. data/lib/ruby_mod_kit/memo/ivar_memo.rb +16 -8
  37. data/lib/ruby_mod_kit/memo/method_memo.rb +8 -1
  38. data/lib/ruby_mod_kit/memo/offset_memo.rb +4 -0
  39. data/lib/ruby_mod_kit/memo/overload_memo.rb +9 -1
  40. data/lib/ruby_mod_kit/memo/parameter_memo.rb +6 -1
  41. data/lib/ruby_mod_kit/memo_pad.rb +28 -0
  42. data/lib/ruby_mod_kit/mission.rb +2 -0
  43. data/lib/ruby_mod_kit/node/base_node.rb +32 -1
  44. data/lib/ruby_mod_kit/node/begin_node.rb +4 -0
  45. data/lib/ruby_mod_kit/node/call_node.rb +4 -0
  46. data/lib/ruby_mod_kit/node/def_node.rb +36 -0
  47. data/lib/ruby_mod_kit/node/def_parent_node.rb +10 -2
  48. data/lib/ruby_mod_kit/node/parameter_node.rb +5 -0
  49. data/lib/ruby_mod_kit/node/program_node.rb +3 -0
  50. data/lib/ruby_mod_kit/node/statements_node.rb +4 -0
  51. data/lib/ruby_mod_kit/node/symbol_node.rb +7 -2
  52. data/lib/ruby_mod_kit/node/untyped_node.rb +4 -0
  53. data/lib/ruby_mod_kit/node/wrap.rb +4 -0
  54. data/lib/ruby_mod_kit/offset_diff.rb +6 -0
  55. data/lib/ruby_mod_kit/version.rb +1 -1
  56. data/lib/ruby_mod_kit.rb +29 -3
  57. data/sig/generated/ruby_mod_kit/cli.rbs +5 -0
  58. data/sig/generated/ruby_mod_kit/config.rbs +7 -2
  59. data/sig/generated/ruby_mod_kit/core_ext/eval.rbs +7 -0
  60. data/sig/generated/ruby_mod_kit/core_ext/load.rbs +10 -0
  61. data/sig/generated/ruby_mod_kit/corrector.rbs +5 -0
  62. data/sig/generated/ruby_mod_kit/corrector_manager.rbs +6 -0
  63. data/sig/generated/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_corrector.rbs +4 -0
  64. data/sig/generated/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_mission.rbs +2 -0
  65. data/sig/generated/ruby_mod_kit/feature/instance_variable_parameter.rbs +2 -0
  66. data/sig/generated/ruby_mod_kit/feature/overload/overload_mission.rbs +3 -0
  67. data/sig/generated/ruby_mod_kit/feature/overload.rbs +1 -0
  68. data/sig/generated/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rbs +2 -0
  69. data/sig/generated/ruby_mod_kit/feature/type/check/arguments.rbs +2 -0
  70. data/sig/generated/ruby_mod_kit/feature/type/instance_variable_colon_corrector.rbs +4 -0
  71. data/sig/generated/ruby_mod_kit/feature/type/parameter_arrow_corrector.rbs +14 -0
  72. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/add_magic_comment_mission.rbs +3 -0
  73. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_attr_mission.rbs +2 -0
  74. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_instance_variable_mission.rbs +2 -0
  75. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_overload_mission.rbs +2 -0
  76. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_parameter_mission.rbs +2 -0
  77. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_return_mission.rbs +2 -0
  78. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline.rbs +1 -0
  79. data/sig/generated/ruby_mod_kit/feature/type/return_value_colon_corrector.rbs +4 -0
  80. data/sig/generated/ruby_mod_kit/feature/type/type_attr_mission.rbs +3 -0
  81. data/sig/generated/ruby_mod_kit/feature/type/yard/type_parameter_mission.rbs +2 -0
  82. data/sig/generated/ruby_mod_kit/feature/type/yard/type_return_mission.rbs +2 -0
  83. data/sig/generated/ruby_mod_kit/feature/type/yard.rbs +3 -0
  84. data/sig/generated/ruby_mod_kit/feature/type.rbs +2 -0
  85. data/sig/generated/ruby_mod_kit/feature.rbs +2 -0
  86. data/sig/generated/ruby_mod_kit/generation.rbs +31 -34
  87. data/sig/generated/ruby_mod_kit/memo/def_parent_memo.rbs +6 -0
  88. data/sig/generated/ruby_mod_kit/memo/ivar_memo.rbs +16 -8
  89. data/sig/generated/ruby_mod_kit/memo/method_memo.rbs +8 -1
  90. data/sig/generated/ruby_mod_kit/memo/offset_memo.rbs +4 -0
  91. data/sig/generated/ruby_mod_kit/memo/overload_memo.rbs +8 -0
  92. data/sig/generated/ruby_mod_kit/memo/parameter_memo.rbs +6 -1
  93. data/sig/generated/ruby_mod_kit/memo_pad.rbs +19 -0
  94. data/sig/generated/ruby_mod_kit/mission.rbs +2 -0
  95. data/sig/generated/ruby_mod_kit/node/base_node.rbs +31 -2
  96. data/sig/generated/ruby_mod_kit/node/begin_node.rbs +4 -0
  97. data/sig/generated/ruby_mod_kit/node/call_node.rbs +4 -0
  98. data/sig/generated/ruby_mod_kit/node/def_node.rbs +24 -0
  99. data/sig/generated/ruby_mod_kit/node/def_parent_node.rbs +11 -3
  100. data/sig/generated/ruby_mod_kit/node/parameter_node.rbs +5 -0
  101. data/sig/generated/ruby_mod_kit/node/program_node.rbs +3 -0
  102. data/sig/generated/ruby_mod_kit/node/statements_node.rbs +4 -0
  103. data/sig/generated/ruby_mod_kit/node/symbol_node.rbs +8 -3
  104. data/sig/generated/ruby_mod_kit/node/untyped_node.rbs +4 -0
  105. data/sig/generated/ruby_mod_kit/node/wrap.rbs +4 -0
  106. data/sig/generated/ruby_mod_kit/offset_diff.rbs +6 -0
  107. data/sig/generated/ruby_mod_kit.rbs +31 -6
  108. metadata +3 -2
@@ -8,6 +8,8 @@ module RubyModKit
8
8
  class TypeOverloadMission < Mission
9
9
  # @rbs generation: Generation
10
10
  # @rbs return: bool
11
+ # @param generation [Generation]
12
+ # @return [Boolean]
11
13
  def perform: (Generation generation) -> bool
12
14
  end
13
15
  end
@@ -8,6 +8,8 @@ module RubyModKit
8
8
  class TypeParameterMission < Mission
9
9
  # @rbs generation: Generation
10
10
  # @rbs return: bool
11
+ # @param generation [Generation]
12
+ # @return [Boolean]
11
13
  def perform: (Generation generation) -> bool
12
14
  end
13
15
  end
@@ -8,6 +8,8 @@ module RubyModKit
8
8
  class TypeReturnMission < Mission
9
9
  # @rbs generation: Generation
10
10
  # @rbs return: bool
11
+ # @param generation [Generation]
12
+ # @return [Boolean]
11
13
  def perform: (Generation generation) -> bool
12
14
  end
13
15
  end
@@ -6,6 +6,7 @@ module RubyModKit
6
6
  # namespace for type with rbs-line feature
7
7
  class RbsInline < Feature
8
8
  # @rbs return: Array[Mission]
9
+ # @return [Array<Mission>]
9
10
  def create_missions: () -> Array[Mission]
10
11
  end
11
12
  end
@@ -6,11 +6,15 @@ module RubyModKit
6
6
  # the class to correct `def foo: Some ...` -> `def foo ...`
7
7
  class ReturnValueColonCorrector < Corrector
8
8
  # @rbs return: Array[Symbol]
9
+ # @return [Array<Symbol>]
9
10
  def correctable_error_types: () -> Array[Symbol]
10
11
 
11
12
  # @rbs parse_error: Prism::ParseError
12
13
  # @rbs generation: Generation
13
14
  # @rbs return: void
15
+ # @param parse_error [Prism::ParseError]
16
+ # @param generation [Generation]
17
+ # @return [void]
14
18
  def correct: (Prism::ParseError parse_error, Generation generation) -> void
15
19
  end
16
20
  end
@@ -8,10 +8,13 @@ module RubyModKit
8
8
  @modified: bool
9
9
 
10
10
  # @rbs return: void
11
+ # @return [void]
11
12
  def initialize: () -> void
12
13
 
13
14
  # @rbs generation: Generation
14
15
  # @rbs return: bool
16
+ # @param generation [Generation]
17
+ # @return [Boolean]
15
18
  def perform: (Generation generation) -> bool
16
19
  end
17
20
  end
@@ -8,6 +8,8 @@ module RubyModKit
8
8
  class TypeParameterMission < Mission
9
9
  # @rbs generation: Generation
10
10
  # @rbs return: bool
11
+ # @param generation [Generation]
12
+ # @return [Boolean]
11
13
  def perform: (Generation generation) -> bool
12
14
  end
13
15
  end
@@ -8,6 +8,8 @@ module RubyModKit
8
8
  class TypeReturnMission < Mission
9
9
  # @rbs generation: Generation
10
10
  # @rbs return: bool
11
+ # @param generation [Generation]
12
+ # @return [Boolean]
11
13
  def perform: (Generation generation) -> bool
12
14
  end
13
15
  end
@@ -6,10 +6,13 @@ module RubyModKit
6
6
  # namespace for type with rbs-line feature
7
7
  class Yard < Feature
8
8
  # @rbs return: Array[Mission]
9
+ # @return [Array<Mission>]
9
10
  def create_missions: () -> Array[Mission]
10
11
 
11
12
  # @rbs type: String
12
13
  # @rbs return: String
14
+ # @param type [String]
15
+ # @return [String]
13
16
  def self.rbs2yard: (String type) -> String
14
17
  end
15
18
  end
@@ -5,9 +5,11 @@ module RubyModKit
5
5
  # namespace for type feature
6
6
  class Type < Feature
7
7
  # @rbs return: Array[Corrector]
8
+ # @return [Array<Corrector>]
8
9
  def create_correctors: () -> Array[Corrector]
9
10
 
10
11
  # @rbs return: Array[Mission]
12
+ # @return [Array<Mission>]
11
13
  def create_missions: () -> Array[Mission]
12
14
  end
13
15
  end
@@ -4,9 +4,11 @@ module RubyModKit
4
4
  # the base class of feature
5
5
  class Feature
6
6
  # @rbs return: Array[Corrector]
7
+ # @return [Array<Corrector>]
7
8
  def create_correctors: () -> Array[Corrector]
8
9
 
9
10
  # @rbs return: Array[Mission]
11
+ # @return [Array<Mission>]
10
12
  def create_missions: () -> Array[Mission]
11
13
  end
12
14
  end
@@ -52,31 +52,51 @@ module RubyModKit
52
52
  # @rbs corrector_manager: CorrectorManager | nil
53
53
  # @rbs features: Array[Feature] | nil
54
54
  # @rbs return: void
55
+ # @param script [String]
56
+ # @param missions [Array<Mission>]
57
+ # @param memo_pad [MemoPad, nil]
58
+ # @param generation_num [Integer]
59
+ # @param config [Config, nil]
60
+ # @param filename [String, nil]
61
+ # @param corrector_manager [CorrectorManager, nil]
62
+ # @param features [Array<Feature>, nil]
63
+ # @return [void]
55
64
  def initialize: (String script, ?missions: Array[Mission], ?memo_pad: MemoPad | nil, ?generation_num: Integer, ?config: Config | nil, ?filename: String | nil, ?corrector_manager: CorrectorManager | nil, ?features: Array[Feature] | nil) -> void
56
65
 
57
66
  # @rbs return: void
67
+ # @return [void]
58
68
  def init_missions: () -> void
59
69
 
60
70
  # @rbs return: bool
71
+ # @return [Boolean]
61
72
  def first_generation?: () -> bool
62
73
 
63
74
  # @rbs return: Generation
75
+ # @return [Generation]
64
76
  def succ: () -> Generation
65
77
 
66
78
  # @rbs return: String
79
+ # @return [String]
67
80
  def name: () -> String
68
81
 
69
82
  # @rbs return: bool
83
+ # @return [Boolean]
70
84
  def completed?: () -> bool
71
85
 
72
86
  # @rbs src_offset: Integer
73
87
  # @rbs length: Integer
74
88
  # @rbs str: String
75
89
  # @rbs return: String
90
+ # @param src_offset [Integer]
91
+ # @param length [Integer]
92
+ # @param str [String]
93
+ # @return [String]
76
94
  def []=: (Integer src_offset, Integer length, String str) -> String
77
95
 
78
96
  # @rbs src_range: Range[Integer | nil]
79
97
  # @rbs return: String
98
+ # @param src_range [Range<Integer, nil>]
99
+ # @return [String]
80
100
  def []: (Range[Integer | nil] src_range) -> String
81
101
 
82
102
  # @rbs (Integer) -> String
@@ -86,18 +106,6 @@ module RubyModKit
86
106
  | (Node::BaseNode) -> String
87
107
  | (Prism::ParseError) -> String
88
108
 
89
- # @rbs line_num: Integer
90
- # @rbs return: String
91
- def line__overload0: (Integer line_num) -> String
92
-
93
- # @rbs node: Node::BaseNode
94
- # @rbs return: String
95
- def line__overload1: (Node::BaseNode node) -> String
96
-
97
- # @rbs parse_error: Prism::ParseError
98
- # @rbs return: String
99
- def line__overload2: (Prism::ParseError parse_error) -> String
100
-
101
109
  # @rbs (Integer) -> (Integer | nil)
102
110
  # | (Node::BaseNode) -> (Integer | nil)
103
111
  # | (Node::BaseNode, Integer) -> (Integer | nil)
@@ -107,50 +115,39 @@ module RubyModKit
107
115
  | (Node::BaseNode, Integer) -> (Integer | nil)
108
116
  | (Prism::ParseError) -> (Integer | nil)
109
117
 
110
- # @rbs line_num: Integer
111
- # @rbs return: Integer | nil
112
- def line_offset__overload0: (Integer line_num) -> (Integer | nil)
113
-
114
118
  # @rbs node: Node::BaseNode
115
119
  # @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)
122
-
123
- # @rbs parse_error: Prism::ParseError
124
- # @rbs return: Integer | nil
125
- def line_offset__overload3: (Prism::ParseError parse_error) -> (Integer | nil)
120
+ # @param node [Node::BaseNode]
121
+ # @return [Integer, nil]
122
+ def end_line_offset: (Node::BaseNode node) -> (Integer | nil)
126
123
 
127
124
  # @rbs (Integer) -> String
128
125
  # | (Node::BaseNode) -> String
129
126
  def line_indent: (Integer) -> String
130
127
  | (Node::BaseNode) -> String
131
128
 
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
139
-
140
129
  # @rbs return: void
130
+ # @return [void]
141
131
  def perform_corrector: () -> void
142
132
 
143
133
  # @rbs return: void
134
+ # @return [void]
144
135
  def perform_missions: () -> void
145
136
 
146
137
  # @rbs mission: Mission
147
138
  # @rbs return: void
139
+ # @param mission [Mission]
140
+ # @return [void]
148
141
  def add_mission: (Mission mission) -> void
149
142
 
150
143
  # @rbs src: String
151
144
  # @rbs filename: String | nil
152
145
  # @rbs config: Config | nil
153
146
  # @rbs return: Generation
147
+ # @param src [String]
148
+ # @param filename [String, nil]
149
+ # @param config [Config, nil]
150
+ # @return [Generation]
154
151
  def self.resolve: (String src, ?filename: String | nil, ?config: Config | nil) -> Generation
155
152
  end
156
153
  end
@@ -10,14 +10,20 @@ module RubyModKit
10
10
 
11
11
  # @rbs def_parent_node: Node::DefParentNode
12
12
  # @rbs return: void
13
+ # @param def_parent_node [Node::DefParentNode]
14
+ # @return [void]
13
15
  def initialize: (Node::DefParentNode def_parent_node) -> void
14
16
 
15
17
  # @rbs name: Symbol
16
18
  # @rbs return: Memo::IvarMemo
19
+ # @param name [Symbol]
20
+ # @return [Memo::IvarMemo]
17
21
  def ivar_memo: (Symbol name) -> Memo::IvarMemo
18
22
 
19
23
  # @rbs offset_diff: OffsetDiff
20
24
  # @rbs return: void
25
+ # @param offset_diff [OffsetDiff]
26
+ # @return [void]
21
27
  def succ: (OffsetDiff offset_diff) -> void
22
28
  end
23
29
  end
@@ -4,46 +4,54 @@ module RubyModKit
4
4
  module Memo
5
5
  # The memo for parameter type
6
6
  class IvarMemo
7
- @type: nil | String
7
+ @type: String | nil
8
8
 
9
- @attr_kind: nil | Symbol
9
+ @attr_kind: Symbol | nil
10
10
 
11
- @offset: nil | Integer
11
+ @offset: Integer | nil
12
12
 
13
13
  @indent: String
14
14
 
15
15
  @name: Symbol
16
16
 
17
- @visibility: nil | Symbol
17
+ @visibility: Symbol | nil
18
18
 
19
19
  @separator: String
20
20
 
21
- attr_reader type: nil | String
21
+ attr_reader type: String | nil
22
22
 
23
- attr_reader attr_kind: nil | Symbol
23
+ attr_reader attr_kind: Symbol | nil
24
24
 
25
- attr_accessor offset: nil | Integer
25
+ attr_accessor offset: Integer | nil
26
26
 
27
27
  attr_accessor indent: String
28
28
 
29
- attr_accessor visibility: nil | Symbol
29
+ attr_accessor visibility: Symbol | nil
30
30
 
31
31
  attr_accessor separator: String
32
32
 
33
33
  # @rbs name: Symbol
34
34
  # @rbs return: void
35
+ # @param name [Symbol]
36
+ # @return [void]
35
37
  def initialize: (Symbol name) -> void
36
38
 
37
39
  # @rbs type: String
38
40
  # @rbs return: void
41
+ # @param type [String]
42
+ # @return [void]
39
43
  def type=: (String type) -> void
40
44
 
41
45
  # @rbs kind: Symbol | String
42
46
  # @rbs return: void
47
+ # @param kind [Symbol, String]
48
+ # @return [void]
43
49
  def attr_kind=: (Symbol | String kind) -> void
44
50
 
45
51
  # @rbs offset_diff: OffsetDiff
46
52
  # @rbs return: void
53
+ # @param offset_diff [OffsetDiff]
54
+ # @return [void]
47
55
  def succ: (OffsetDiff offset_diff) -> void
48
56
  end
49
57
  end
@@ -16,21 +16,28 @@ module RubyModKit
16
16
 
17
17
  attr_reader type: String
18
18
 
19
- UNTYPED: ::String
19
+ UNTYPED: String
20
20
 
21
21
  # @rbs node: Node::DefNode
22
22
  # @rbs return: void
23
+ # @param node [Node::DefNode]
24
+ # @return [void]
23
25
  def initialize: (Node::DefNode node) -> void
24
26
 
25
27
  # @rbs parameter_memo: Memo::ParameterMemo
26
28
  # @rbs return: Memo::ParameterMemo
29
+ # @param parameter_memo [Memo::ParameterMemo]
30
+ # @return [Memo::ParameterMemo]
27
31
  def add_parameter: (Memo::ParameterMemo parameter_memo) -> Memo::ParameterMemo
28
32
 
29
33
  # @rbs return: bool
34
+ # @return [Boolean]
30
35
  def untyped?: () -> bool
31
36
 
32
37
  # @rbs type: String
33
38
  # @rbs return: void
39
+ # @param type [String]
40
+ # @return [void]
34
41
  def type=: (String type) -> void
35
42
  end
36
43
  end
@@ -10,10 +10,14 @@ module RubyModKit
10
10
 
11
11
  # @rbs offset: Integer
12
12
  # @rbs return: void
13
+ # @param offset [Integer]
14
+ # @return [void]
13
15
  def initialize: (Integer offset) -> void
14
16
 
15
17
  # @rbs offset_diff: OffsetDiff
16
18
  # @rbs return: void
19
+ # @param offset_diff [OffsetDiff]
20
+ # @return [void]
17
21
  def succ: (OffsetDiff offset_diff) -> void
18
22
  end
19
23
  end
@@ -19,15 +19,23 @@ module RubyModKit
19
19
  # @rbs offset: Integer
20
20
  # @rbs name: Symbol
21
21
  # @rbs return: void
22
+ # @param offset [Integer]
23
+ # @param name [Symbol]
24
+ # @return [void]
22
25
  def initialize: (Integer offset, Symbol name) -> void
23
26
 
24
27
  # @rbs root_node: Node::ProgramNode
25
28
  # @rbs return: Integer
29
+ # @param root_node [Node::ProgramNode]
30
+ # @return [Integer]
26
31
  def correct_offset: (Node::ProgramNode root_node) -> Integer
27
32
 
28
33
  # @rbs parameter_types: Array[String]
29
34
  # @rbs return_value_type: String
30
35
  # @rbs return: void
36
+ # @param parameter_types [Array<String>]
37
+ # @param return_value_type [String]
38
+ # @return [void]
31
39
  def add_overload_type: (Array[String] parameter_types, String return_value_type) -> void
32
40
  end
33
41
  end
@@ -20,17 +20,22 @@ module RubyModKit
20
20
 
21
21
  attr_accessor name: Symbol
22
22
 
23
- UNTYPED: ::String
23
+ UNTYPED: String
24
24
 
25
25
  # @rbs offset: Integer
26
26
  # @rbs return: void
27
+ # @param offset [Integer]
28
+ # @return [void]
27
29
  def initialize: (Integer offset) -> void
28
30
 
29
31
  # @rbs return: bool
32
+ # @return [Boolean]
30
33
  def untyped?: () -> bool
31
34
 
32
35
  # @rbs type: String
33
36
  # @rbs return: void
37
+ # @param type [String]
38
+ # @return [void]
34
39
  def type=: (String type) -> void
35
40
  end
36
41
  end
@@ -24,31 +24,50 @@ module RubyModKit
24
24
  attr_accessor flags: Hash[Symbol, bool]
25
25
 
26
26
  # @rbs return: void
27
+ # @return [void]
27
28
  def initialize: () -> void
28
29
 
29
30
  # @rbs offset_diff: OffsetDiff
30
31
  # @rbs return: void
32
+ # @param offset_diff [OffsetDiff]
33
+ # @return [void]
31
34
  def succ: (OffsetDiff offset_diff) -> void
32
35
 
33
36
  # @rbs def_parent_node: Node::DefParentNode
34
37
  # @rbs return: Memo::DefParentMemo
38
+ # @param def_parent_node [Node::DefParentNode]
39
+ # @return [Memo::DefParentMemo]
35
40
  def def_parent_memo: (Node::DefParentNode def_parent_node) -> Memo::DefParentMemo
36
41
 
37
42
  # @rbs def_node: Node::DefNode
38
43
  # @rbs return: Memo::MethodMemo
44
+ # @param def_node [Node::DefNode]
45
+ # @return [Memo::MethodMemo]
39
46
  def method_memo: (Node::DefNode def_node) -> Memo::MethodMemo
40
47
 
41
48
  # @rbs offset: Integer
42
49
  # @rbs name: Symbol
43
50
  # @rbs return: Memo::OverloadMemo
51
+ # @param offset [Integer]
52
+ # @param name [Symbol]
53
+ # @return [Memo::OverloadMemo]
44
54
  def overload_memo: (Integer offset, Symbol name) -> Memo::OverloadMemo
45
55
 
46
56
  # @rbs node: Node::BaseNode
47
57
  # @rbs return: Memo::ParameterMemo
58
+ # @param node [Node::BaseNode]
59
+ # @return [Memo::ParameterMemo]
48
60
  def parameter_memo: (Node::BaseNode node) -> Memo::ParameterMemo
49
61
 
62
+ # @rbs (Memo::ParameterMemo) -> void
63
+ # | (Memo::MethodMemo) -> void
64
+ def delete: (Memo::ParameterMemo) -> void
65
+ | (Memo::MethodMemo) -> void
66
+
50
67
  # @rbs &block: (Memo::ParameterMemo) -> void
51
68
  # @rbs return: void
69
+ # @param block [(Memo::ParameterMemo) -> void]
70
+ # @return [void]
52
71
  def each_parameter_memo: () { (Memo::ParameterMemo) -> void } -> void
53
72
  end
54
73
  end
@@ -5,6 +5,8 @@ module RubyModKit
5
5
  class Mission
6
6
  # @rbs _generation: Generation
7
7
  # @rbs return: void
8
+ # @param _generation [Generation]
9
+ # @return [void]
8
10
  def perform: (untyped _generation) -> void
9
11
  end
10
12
  end
@@ -15,57 +15,85 @@ module RubyModKit
15
15
  attr_reader prev: Node::BaseNode | nil
16
16
 
17
17
  # @rbs return: Prism::Location
18
+ # @return [Prism::Location]
18
19
  def location: () -> Prism::Location
19
20
 
20
21
  # @rbs return: Array[Node::BaseNode]
22
+ # @return [Array<Node::BaseNode>]
21
23
  def children: () -> Array[Node::BaseNode]
22
24
 
23
25
  # @rbs prism_node: Prism::Node
24
26
  # @rbs prev: Node::BaseNode | nil
25
27
  # @rbs return: Node::BaseNode
28
+ # @param prism_node [Prism::Node]
29
+ # @param prev [Node::BaseNode, nil]
30
+ # @return [Node::BaseNode]
26
31
  def wrap: (Prism::Node prism_node, ?prev: Node::BaseNode | nil) -> Node::BaseNode
27
32
 
28
33
  # @rbs return: Array[Node::BaseNode]
34
+ # @return [Array<Node::BaseNode>]
29
35
  def ancestors: () -> Array[Node::BaseNode]
30
36
 
31
- # @rbs return: nil | BaseNode
32
- def parent: () -> (nil | BaseNode)
37
+ # @rbs return: BaseNode | nil
38
+ # @return [BaseNode, nil]
39
+ def parent: () -> (BaseNode | nil)
33
40
 
34
41
  # @rbs return: Symbol
42
+ # @return [Symbol]
35
43
  def name: () -> Symbol
36
44
 
37
45
  # @rbs offset: Integer
38
46
  # @rbs return: Node::BaseNode | nil
47
+ # @param offset [Integer]
48
+ # @return [Node::BaseNode, nil]
39
49
  def node_at: (Integer offset) -> (Node::BaseNode | nil)
40
50
 
41
51
  # @rbs offset: Integer
42
52
  # @rbs return: Node::StatementsNode | nil
53
+ # @param offset [Integer]
54
+ # @return [Node::StatementsNode, nil]
43
55
  def statements_node_at: (Integer offset) -> (Node::StatementsNode | nil)
44
56
 
45
57
  # @rbs offset: Integer
46
58
  # @rbs return: Node::DefNode | nil
59
+ # @param offset [Integer]
60
+ # @return [Node::DefNode, nil]
47
61
  def def_node_at: (Integer offset) -> (Node::DefNode | nil)
48
62
 
49
63
  # @rbs offset: Integer
50
64
  # @rbs return: Node::ParameterNode | nil
65
+ # @param offset [Integer]
66
+ # @return [Node::ParameterNode, nil]
51
67
  def parameter_node_at: (Integer offset) -> (Node::ParameterNode | nil)
52
68
 
53
69
  # @rbs offset: Integer
54
70
  # @rbs allowed: Array[Class] | nil
55
71
  # @rbs return: Node::DefParentNode | nil
72
+ # @param offset [Integer]
73
+ # @param allowed [Array<Class>, nil]
74
+ # @return [Node::DefParentNode, nil]
56
75
  def def_parent_node_at: (Integer offset, ?allowed: Array[Class] | nil) -> (Node::DefParentNode | nil)
57
76
 
58
77
  # @rbs offset: Integer
59
78
  # @rbs return: bool
79
+ # @param offset [Integer]
80
+ # @return [Boolean]
60
81
  def include?: (Integer offset) -> bool
61
82
 
62
83
  # @rbs return: Integer
84
+ # @return [Integer]
63
85
  def offset: () -> Integer
64
86
 
87
+ # @rbs return: Integer
88
+ # @return [Integer]
89
+ def end_offset: () -> Integer
90
+
65
91
  # @rbs return: String
92
+ # @return [String]
66
93
  def slice: () -> String
67
94
 
68
95
  # @rbs return: String
96
+ # @return [String]
69
97
  def inspect: () -> String
70
98
 
71
99
  private
@@ -73,6 +101,7 @@ module RubyModKit
73
101
  # :nocov:
74
102
  # This is just for interface definition, must not be called
75
103
  # @rbs return: Prism::Node & Prism::_Node
104
+ # @return [Prism::Node & Prism::_Node]
76
105
  def prism_node: () -> (Prism::Node & Prism::_Node)
77
106
  end
78
107
  end
@@ -20,6 +20,10 @@ module RubyModKit
20
20
  # @rbs parent: Node::BaseNode
21
21
  # @rbs prev: Node::BaseNode | nil
22
22
  # @rbs return: void
23
+ # @param prism_node [Prism::BeginNode]
24
+ # @param parent [Node::BaseNode]
25
+ # @param prev [Node::BaseNode, nil]
26
+ # @return [void]
23
27
  def initialize: (Prism::BeginNode prism_node, parent: Node::BaseNode, ?prev: Node::BaseNode | nil) -> void
24
28
  end
25
29
  end
@@ -24,6 +24,10 @@ module RubyModKit
24
24
  # @rbs parent: Node::BaseNode
25
25
  # @rbs prev: Node::BaseNode | nil
26
26
  # @rbs return: void
27
+ # @param prism_node [Prism::CallNode]
28
+ # @param parent [Node::BaseNode]
29
+ # @param prev [Node::BaseNode, nil]
30
+ # @return [void]
27
31
  def initialize: (Prism::CallNode prism_node, parent: Node::BaseNode, ?prev: Node::BaseNode | nil) -> void
28
32
  end
29
33
  end