ruby_mod_kit 0.0.4 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (110) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby_mod_kit.yml +1 -0
  3. data/.yardopts +3 -0
  4. data/README.md +89 -0
  5. data/examples/user.rb +4 -16
  6. data/lib/ruby_mod_kit/cli.rb +5 -0
  7. data/lib/ruby_mod_kit/config.rb +6 -1
  8. data/lib/ruby_mod_kit/core_ext/eval.rb +13 -10
  9. data/lib/ruby_mod_kit/core_ext/load.rb +10 -0
  10. data/lib/ruby_mod_kit/corrector.rb +8 -0
  11. data/lib/ruby_mod_kit/corrector_manager.rb +16 -6
  12. data/lib/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_corrector.rb +4 -0
  13. data/lib/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_mission.rb +3 -1
  14. data/lib/ruby_mod_kit/feature/instance_variable_parameter.rb +2 -0
  15. data/lib/ruby_mod_kit/feature/overload/overload_mission.rb +44 -13
  16. data/lib/ruby_mod_kit/feature/overload.rb +1 -0
  17. data/lib/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rb +58 -0
  18. data/lib/ruby_mod_kit/feature/type/check/arguments.rb +25 -0
  19. data/lib/ruby_mod_kit/feature/type/instance_variable_colon_corrector.rb +13 -4
  20. data/lib/ruby_mod_kit/feature/type/parameter_arrow_corrector.rb +41 -5
  21. data/lib/ruby_mod_kit/feature/type/rbs_inline/add_magic_comment_mission.rb +3 -0
  22. data/lib/ruby_mod_kit/feature/type/rbs_inline/type_attr_mission.rb +2 -0
  23. data/lib/ruby_mod_kit/feature/type/rbs_inline/type_instance_variable_mission.rb +5 -2
  24. data/lib/ruby_mod_kit/feature/type/rbs_inline/type_overload_mission.rb +3 -2
  25. data/lib/ruby_mod_kit/feature/type/rbs_inline/type_parameter_mission.rb +7 -4
  26. data/lib/ruby_mod_kit/feature/type/rbs_inline/type_return_mission.rb +3 -1
  27. data/lib/ruby_mod_kit/feature/type/rbs_inline.rb +1 -0
  28. data/lib/ruby_mod_kit/feature/type/return_value_colon_corrector.rb +5 -0
  29. data/lib/ruby_mod_kit/feature/type/type_attr_mission.rb +6 -9
  30. data/lib/ruby_mod_kit/feature/type/yard/type_parameter_mission.rb +37 -0
  31. data/lib/ruby_mod_kit/feature/type/yard/type_return_mission.rb +32 -0
  32. data/lib/ruby_mod_kit/feature/type/yard.rb +34 -0
  33. data/lib/ruby_mod_kit/feature/type.rb +2 -0
  34. data/lib/ruby_mod_kit/feature.rb +2 -0
  35. data/lib/ruby_mod_kit/generation.rb +67 -49
  36. data/lib/ruby_mod_kit/memo/def_parent_memo.rb +6 -0
  37. data/lib/ruby_mod_kit/memo/ivar_memo.rb +18 -8
  38. data/lib/ruby_mod_kit/memo/method_memo.rb +8 -1
  39. data/lib/ruby_mod_kit/memo/offset_memo.rb +4 -0
  40. data/lib/ruby_mod_kit/memo/overload_memo.rb +9 -1
  41. data/lib/ruby_mod_kit/memo/parameter_memo.rb +10 -3
  42. data/lib/ruby_mod_kit/memo_pad.rb +34 -0
  43. data/lib/ruby_mod_kit/mission.rb +2 -4
  44. data/lib/ruby_mod_kit/node/base_node.rb +43 -3
  45. data/lib/ruby_mod_kit/node/begin_node.rb +35 -0
  46. data/lib/ruby_mod_kit/node/call_node.rb +4 -0
  47. data/lib/ruby_mod_kit/node/def_node.rb +36 -0
  48. data/lib/ruby_mod_kit/node/def_parent_node.rb +10 -2
  49. data/lib/ruby_mod_kit/node/parameter_node.rb +7 -2
  50. data/lib/ruby_mod_kit/node/program_node.rb +3 -0
  51. data/lib/ruby_mod_kit/node/statements_node.rb +4 -0
  52. data/lib/ruby_mod_kit/node/symbol_node.rb +7 -2
  53. data/lib/ruby_mod_kit/node/untyped_node.rb +4 -0
  54. data/lib/ruby_mod_kit/node/wrap.rb +7 -1
  55. data/lib/ruby_mod_kit/node.rb +1 -0
  56. data/lib/ruby_mod_kit/offset_diff.rb +6 -0
  57. data/lib/ruby_mod_kit/version.rb +1 -1
  58. data/lib/ruby_mod_kit.rb +29 -8
  59. data/sig/generated/ruby_mod_kit/cli.rbs +5 -0
  60. data/sig/generated/ruby_mod_kit/config.rbs +7 -2
  61. data/sig/generated/ruby_mod_kit/core_ext/eval.rbs +11 -2
  62. data/sig/generated/ruby_mod_kit/core_ext/load.rbs +10 -0
  63. data/sig/generated/ruby_mod_kit/corrector.rbs +8 -0
  64. data/sig/generated/ruby_mod_kit/corrector_manager.rbs +7 -1
  65. data/sig/generated/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_corrector.rbs +4 -0
  66. data/sig/generated/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_mission.rbs +2 -0
  67. data/sig/generated/ruby_mod_kit/feature/instance_variable_parameter.rbs +2 -0
  68. data/sig/generated/ruby_mod_kit/feature/overload/overload_mission.rbs +3 -0
  69. data/sig/generated/ruby_mod_kit/feature/overload.rbs +1 -0
  70. data/sig/generated/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rbs +18 -0
  71. data/sig/generated/ruby_mod_kit/feature/type/check/arguments.rbs +17 -0
  72. data/sig/generated/ruby_mod_kit/feature/type/instance_variable_colon_corrector.rbs +4 -0
  73. data/sig/generated/ruby_mod_kit/feature/type/parameter_arrow_corrector.rbs +19 -0
  74. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/add_magic_comment_mission.rbs +3 -0
  75. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_attr_mission.rbs +2 -0
  76. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_instance_variable_mission.rbs +2 -0
  77. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_overload_mission.rbs +2 -0
  78. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_parameter_mission.rbs +2 -0
  79. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_return_mission.rbs +2 -0
  80. data/sig/generated/ruby_mod_kit/feature/type/rbs_inline.rbs +1 -0
  81. data/sig/generated/ruby_mod_kit/feature/type/return_value_colon_corrector.rbs +4 -0
  82. data/sig/generated/ruby_mod_kit/feature/type/type_attr_mission.rbs +3 -0
  83. data/sig/generated/ruby_mod_kit/feature/type/yard/type_parameter_mission.rbs +18 -0
  84. data/sig/generated/ruby_mod_kit/feature/type/yard/type_return_mission.rbs +18 -0
  85. data/sig/generated/ruby_mod_kit/feature/type/yard.rbs +20 -0
  86. data/sig/generated/ruby_mod_kit/feature/type.rbs +2 -0
  87. data/sig/generated/ruby_mod_kit/feature.rbs +2 -0
  88. data/sig/generated/ruby_mod_kit/generation.rbs +46 -25
  89. data/sig/generated/ruby_mod_kit/memo/def_parent_memo.rbs +6 -0
  90. data/sig/generated/ruby_mod_kit/memo/ivar_memo.rbs +20 -8
  91. data/sig/generated/ruby_mod_kit/memo/method_memo.rbs +8 -1
  92. data/sig/generated/ruby_mod_kit/memo/offset_memo.rbs +4 -0
  93. data/sig/generated/ruby_mod_kit/memo/overload_memo.rbs +8 -0
  94. data/sig/generated/ruby_mod_kit/memo/parameter_memo.rbs +12 -3
  95. data/sig/generated/ruby_mod_kit/memo_pad.rbs +23 -0
  96. data/sig/generated/ruby_mod_kit/mission.rbs +2 -4
  97. data/sig/generated/ruby_mod_kit/node/base_node.rbs +36 -3
  98. data/sig/generated/ruby_mod_kit/node/begin_node.rbs +30 -0
  99. data/sig/generated/ruby_mod_kit/node/call_node.rbs +4 -0
  100. data/sig/generated/ruby_mod_kit/node/def_node.rbs +24 -0
  101. data/sig/generated/ruby_mod_kit/node/def_parent_node.rbs +11 -3
  102. data/sig/generated/ruby_mod_kit/node/parameter_node.rbs +6 -1
  103. data/sig/generated/ruby_mod_kit/node/program_node.rbs +3 -0
  104. data/sig/generated/ruby_mod_kit/node/statements_node.rbs +4 -0
  105. data/sig/generated/ruby_mod_kit/node/symbol_node.rbs +8 -3
  106. data/sig/generated/ruby_mod_kit/node/untyped_node.rbs +4 -0
  107. data/sig/generated/ruby_mod_kit/node/wrap.rbs +4 -0
  108. data/sig/generated/ruby_mod_kit/offset_diff.rbs +6 -0
  109. data/sig/generated/ruby_mod_kit.rbs +31 -6
  110. metadata +15 -2
@@ -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
 
@@ -22,9 +22,14 @@ module RubyModKit
22
22
  # @rbs parent: Node::BaseNode
23
23
  # @rbs prev: Node::BaseNode | nil
24
24
  # @rbs return: void
25
+ # @param prism_node [prism_node]
26
+ # @param parent [Node::BaseNode]
27
+ # @param prev [Node::BaseNode, nil]
28
+ # @return [void]
25
29
  def initialize: (prism_node prism_node, parent: Node::BaseNode, ?prev: Node::BaseNode | nil) -> void
26
30
 
27
31
  # @rbs return: Symbol | nil
32
+ # @return [Symbol, nil]
28
33
  def name: () -> (Symbol | nil)
29
34
  end
30
35
  end
@@ -10,9 +10,12 @@ module RubyModKit
10
10
 
11
11
  # @rbs prism_node: Prism::ProgramNode
12
12
  # @rbs return: void
13
+ # @param prism_node [Prism::ProgramNode]
14
+ # @return [void]
13
15
  def initialize: (Prism::ProgramNode prism_node) -> void
14
16
 
15
17
  # @rbs return: nil
18
+ # @return [nil]
16
19
  def parent: () -> nil
17
20
  end
18
21
  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::StatementsNode]
24
+ # @param parent [Node::BaseNode]
25
+ # @param prev [Node::BaseNode, nil]
26
+ # @return [void]
23
27
  def initialize: (Prism::StatementsNode prism_node, parent: Node::BaseNode, ?prev: Node::BaseNode | nil) -> void
24
28
  end
25
29
  end
@@ -10,7 +10,7 @@ module RubyModKit
10
10
 
11
11
  @prev: Node::BaseNode | nil
12
12
 
13
- @value: nil | Symbol
13
+ @value: Symbol | nil
14
14
 
15
15
  attr_reader prism_node: Prism::SymbolNode
16
16
 
@@ -22,10 +22,15 @@ module RubyModKit
22
22
  # @rbs parent: Node::BaseNode
23
23
  # @rbs prev: Node::BaseNode | nil
24
24
  # @rbs return: void
25
+ # @param prism_node [Prism::SymbolNode]
26
+ # @param parent [Node::BaseNode]
27
+ # @param prev [Node::BaseNode, nil]
28
+ # @return [void]
25
29
  def initialize: (Prism::SymbolNode prism_node, parent: Node::BaseNode, ?prev: Node::BaseNode | nil) -> void
26
30
 
27
- # @rbs return: nil | Symbol
28
- def value: () -> (nil | Symbol)
31
+ # @rbs return: Symbol | nil
32
+ # @return [Symbol, nil]
33
+ def value: () -> (Symbol | nil)
29
34
  end
30
35
  end
31
36
  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::Node]
24
+ # @param parent [Node::BaseNode]
25
+ # @param prev [Node::BaseNode, nil]
26
+ # @return [void]
23
27
  def initialize: (Prism::Node prism_node, parent: Node::BaseNode, ?prev: Node::BaseNode | nil) -> void
24
28
  end
25
29
  end
@@ -7,6 +7,10 @@ module RubyModKit
7
7
  # @rbs parent: Node::BaseNode
8
8
  # @rbs prev: Node::BaseNode | nil
9
9
  # @rbs return: Node::BaseNode
10
+ # @param prism_node [Prism::Node]
11
+ # @param parent [Node::BaseNode]
12
+ # @param prev [Node::BaseNode, nil]
13
+ # @return [Node::BaseNode]
10
14
  def self.wrap: (Prism::Node prism_node, parent: Node::BaseNode, ?prev: Node::BaseNode | nil) -> Node::BaseNode
11
15
  end
12
16
  end
@@ -8,15 +8,21 @@ module RubyModKit
8
8
  @offsets: Array[Integer]
9
9
 
10
10
  # @rbs return: void
11
+ # @return [void]
11
12
  def initialize: () -> void
12
13
 
13
14
  # @rbs src_offset: Integer
14
15
  # @rbs return: Integer
16
+ # @param src_offset [Integer]
17
+ # @return [Integer]
15
18
  def []: (Integer src_offset) -> Integer
16
19
 
17
20
  # @rbs src_offset: Integer
18
21
  # @rbs new_diff: Integer
19
22
  # @rbs return: void
23
+ # @param src_offset [Integer]
24
+ # @param new_diff [Integer]
25
+ # @return [void]
20
26
  def insert: (Integer src_offset, Integer new_diff) -> void
21
27
  end
22
28
  end
@@ -2,46 +2,71 @@
2
2
 
3
3
  # The root namespace for ruby_mod_kit.
4
4
  module RubyModKit
5
+ # An internal error because of RubyModKit implementation
5
6
  class Error < StandardError
6
7
  end
7
8
 
9
+ # A SyntaxError of rbm script
8
10
  class SyntaxError < ::SyntaxError
9
11
  end
10
12
 
11
13
  # @rbs file: String
12
14
  # @rbs *args: String
13
15
  # @rbs output: String | nil
14
- # @rbs config: nil | Config
16
+ # @rbs config: Config | nil
15
17
  # @rbs return: void
16
- def self.execute_file: (String file, *String args, ?output: String | nil, ?config: nil | Config) -> void
18
+ # @param file [String]
19
+ # @param args [String]
20
+ # @param output [String, nil]
21
+ # @param config [Config, nil]
22
+ # @return [void]
23
+ def self.execute_file: (String file, *String args, ?output: String | nil, ?config: Config | nil) -> void
17
24
 
18
25
  # @rbs file: String
19
26
  # @rbs output: String | IO | nil
20
- # @rbs config: nil | Config
27
+ # @rbs config: Config | nil
21
28
  # @rbs return: String
22
- def self.transpile_file: (String file, ?output: String | IO | nil, ?config: nil | Config) -> String
29
+ # @param file [String]
30
+ # @param output [String, IO, nil]
31
+ # @param config [Config, nil]
32
+ # @return [String]
33
+ def self.transpile_file: (String file, ?output: String | IO | nil, ?config: Config | nil) -> String
23
34
 
24
35
  # @rbs src: String
25
36
  # @rbs filename: String | nil
26
- # @rbs config: nil | Config
37
+ # @rbs config: Config | nil
27
38
  # @rbs return: String
28
- def self.transpile: (String src, ?filename: String | nil, ?config: nil | Config) -> String
39
+ # @param src [String]
40
+ # @param filename [String, nil]
41
+ # @param config [Config, nil]
42
+ # @return [String]
43
+ def self.transpile: (String src, ?filename: String | nil, ?config: Config | nil) -> String
29
44
 
30
45
  # @rbs file: String
31
46
  # @rbs *args: String
32
47
  # @rbs return: void
48
+ # @param file [String]
49
+ # @param args [String]
50
+ # @return [void]
33
51
  def self.execute_rb_file: (String file, *String args) -> void
34
52
 
35
53
  # @rbs path: String
36
54
  # @rbs return: String
55
+ # @param path [String]
56
+ # @return [String]
37
57
  def self.rb_path: (String path) -> String
38
58
 
39
59
  # @rbs rb_script: String
40
60
  # @rbs *args: String
41
61
  # @rbs return: void
62
+ # @param rb_script [String]
63
+ # @param args [String]
64
+ # @return [void]
42
65
  def self.execute_rb: (String rb_script, *String args) -> void
43
66
 
44
67
  # @rbs type: String
45
68
  # @rbs return: String
69
+ # @param type [String]
70
+ # @return [String]
46
71
  def self.unify_type: (String type) -> String
47
72
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_mod_kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - wanabe
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-11-26 00:00:00.000000000 Z
11
+ date: 2024-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: prism
@@ -47,6 +47,7 @@ extensions: []
47
47
  extra_rdoc_files: []
48
48
  files:
49
49
  - ".ruby_mod_kit.yml"
50
+ - ".yardopts"
50
51
  - LICENSE.txt
51
52
  - README.md
52
53
  - examples/user.rb
@@ -67,6 +68,8 @@ files:
67
68
  - lib/ruby_mod_kit/feature/overload.rb
68
69
  - lib/ruby_mod_kit/feature/overload/overload_mission.rb
69
70
  - lib/ruby_mod_kit/feature/type.rb
71
+ - lib/ruby_mod_kit/feature/type/check/arguments.rb
72
+ - lib/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rb
70
73
  - lib/ruby_mod_kit/feature/type/instance_variable_colon_corrector.rb
71
74
  - lib/ruby_mod_kit/feature/type/parameter_arrow_corrector.rb
72
75
  - lib/ruby_mod_kit/feature/type/rbs_inline.rb
@@ -78,6 +81,9 @@ files:
78
81
  - lib/ruby_mod_kit/feature/type/rbs_inline/type_return_mission.rb
79
82
  - lib/ruby_mod_kit/feature/type/return_value_colon_corrector.rb
80
83
  - lib/ruby_mod_kit/feature/type/type_attr_mission.rb
84
+ - lib/ruby_mod_kit/feature/type/yard.rb
85
+ - lib/ruby_mod_kit/feature/type/yard/type_parameter_mission.rb
86
+ - lib/ruby_mod_kit/feature/type/yard/type_return_mission.rb
81
87
  - lib/ruby_mod_kit/generation.rb
82
88
  - lib/ruby_mod_kit/memo.rb
83
89
  - lib/ruby_mod_kit/memo/def_parent_memo.rb
@@ -90,6 +96,7 @@ files:
90
96
  - lib/ruby_mod_kit/mission.rb
91
97
  - lib/ruby_mod_kit/node.rb
92
98
  - lib/ruby_mod_kit/node/base_node.rb
99
+ - lib/ruby_mod_kit/node/begin_node.rb
93
100
  - lib/ruby_mod_kit/node/call_node.rb
94
101
  - lib/ruby_mod_kit/node/def_node.rb
95
102
  - lib/ruby_mod_kit/node/def_parent_node.rb
@@ -116,6 +123,8 @@ files:
116
123
  - sig/generated/ruby_mod_kit/feature/overload.rbs
117
124
  - sig/generated/ruby_mod_kit/feature/overload/overload_mission.rbs
118
125
  - sig/generated/ruby_mod_kit/feature/type.rbs
126
+ - sig/generated/ruby_mod_kit/feature/type/check/arguments.rbs
127
+ - sig/generated/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rbs
119
128
  - sig/generated/ruby_mod_kit/feature/type/instance_variable_colon_corrector.rbs
120
129
  - sig/generated/ruby_mod_kit/feature/type/parameter_arrow_corrector.rbs
121
130
  - sig/generated/ruby_mod_kit/feature/type/rbs_inline.rbs
@@ -127,6 +136,9 @@ files:
127
136
  - sig/generated/ruby_mod_kit/feature/type/rbs_inline/type_return_mission.rbs
128
137
  - sig/generated/ruby_mod_kit/feature/type/return_value_colon_corrector.rbs
129
138
  - sig/generated/ruby_mod_kit/feature/type/type_attr_mission.rbs
139
+ - sig/generated/ruby_mod_kit/feature/type/yard.rbs
140
+ - sig/generated/ruby_mod_kit/feature/type/yard/type_parameter_mission.rbs
141
+ - sig/generated/ruby_mod_kit/feature/type/yard/type_return_mission.rbs
130
142
  - sig/generated/ruby_mod_kit/generation.rbs
131
143
  - sig/generated/ruby_mod_kit/memo/def_parent_memo.rbs
132
144
  - sig/generated/ruby_mod_kit/memo/ivar_memo.rbs
@@ -137,6 +149,7 @@ files:
137
149
  - sig/generated/ruby_mod_kit/memo_pad.rbs
138
150
  - sig/generated/ruby_mod_kit/mission.rbs
139
151
  - sig/generated/ruby_mod_kit/node/base_node.rbs
152
+ - sig/generated/ruby_mod_kit/node/begin_node.rbs
140
153
  - sig/generated/ruby_mod_kit/node/call_node.rbs
141
154
  - sig/generated/ruby_mod_kit/node/def_node.rbs
142
155
  - sig/generated/ruby_mod_kit/node/def_parent_node.rbs