rbs_heuristic_prototype 0.1.0 → 0.3.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a07c6fce554f459391e7d81cfee78e42cd54a78704d1ccefa27f6b289cdce67e
4
- data.tar.gz: 78846ef4bcd829e0cb74de64feedc83314599fac49f9174919f6f72fd8e8c180
3
+ metadata.gz: a959d3a8d268d1bf8392251cfb4842beb01c5e6d3da0edc6f7bcc6d6927b886c
4
+ data.tar.gz: a4d88cd1eb8409d6928b9d2f472d9fbfe0d6035b0d08a74f5e6884f73e5cbd87
5
5
  SHA512:
6
- metadata.gz: a4ad899d1c92ff8ebfa26dab2d041357440724637b1c28094d9748b4024b97214bd9a2328ddbc524e35cc0c468d0658113d31484ee34b93cae6d2d545e1e0aa2
7
- data.tar.gz: ff09d89ee6476e0951e31fad137b172130cb82820072a8e6a86f85718c9afa9e6a36dcc384e66e12d774d71a38609bb1287b6326bb063c97e1cf94537e5dc046
6
+ metadata.gz: c78ccdeb69f4014349df67263be3ca63dbeca09884837260e42565926e357d2e14197b2b2bdc676096d3879c5cfd661cc51998238df7630317c11e7954bdc7ef
7
+ data.tar.gz: 4bfa69e3b3bf36c16bdb5f1a3ef8e18446f0cd91e09b056b1e6d5f70de564ec8b06d7134ce7dd9842dbf883cb45b4c0c7b7b009ac1839758e7874163a3f06d07
data/.rubocop.yml CHANGED
@@ -15,5 +15,9 @@ Style/StringLiteralsInInterpolation:
15
15
  Layout/LineLength:
16
16
  Max: 120
17
17
 
18
+ Metrics/BlockLength:
19
+ Exclude:
20
+ - "spec/**/*"
21
+
18
22
  Metrics/MethodLength:
19
23
  Max: 20
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rbs_heuristic_prototype (0.1.0)
4
+ rbs_heuristic_prototype (0.3.0)
5
5
  rbs
6
6
 
7
7
  GEM
@@ -35,7 +35,7 @@ GEM
35
35
  coderay (1.1.3)
36
36
  concurrent-ruby (1.2.2)
37
37
  crass (1.0.6)
38
- csv (3.2.6)
38
+ csv (3.2.7)
39
39
  diff-lcs (1.5.0)
40
40
  erubi (1.12.0)
41
41
  ffi (1.15.5)
@@ -87,7 +87,7 @@ GEM
87
87
  rb-fsevent (0.11.2)
88
88
  rb-inotify (0.10.1)
89
89
  ffi (~> 1.0)
90
- rbs (3.1.0)
90
+ rbs (3.1.1)
91
91
  regexp_parser (2.8.1)
92
92
  rexml (3.2.5)
93
93
  rspec (3.12.0)
@@ -106,7 +106,7 @@ GEM
106
106
  diff-lcs (>= 1.2.0, < 2.0)
107
107
  rspec-support (~> 3.12.0)
108
108
  rspec-support (3.12.0)
109
- rubocop (1.54.1)
109
+ rubocop (1.54.2)
110
110
  json (~> 2.3)
111
111
  language_server-protocol (>= 3.17.0)
112
112
  parallel (~> 1.10)
@@ -121,9 +121,9 @@ GEM
121
121
  parser (>= 3.2.1.0)
122
122
  ruby-progressbar (1.13.0)
123
123
  securerandom (0.2.2)
124
- steep (1.4.0)
124
+ steep (1.5.1)
125
125
  activesupport (>= 5.1)
126
- concurrent-ruby (>= 1.2.2)
126
+ concurrent-ruby (>= 1.1.10)
127
127
  csv (>= 3.0.9)
128
128
  fileutils (>= 1.1.0)
129
129
  json (>= 2.1.0)
@@ -132,7 +132,7 @@ GEM
132
132
  logger (>= 1.3.0)
133
133
  parser (>= 3.1)
134
134
  rainbow (>= 2.2.2, < 4.0)
135
- rbs (>= 2.8.0)
135
+ rbs (>= 3.1.0)
136
136
  securerandom (>= 0.1)
137
137
  strscan (>= 1.0.0)
138
138
  terminal-table (>= 2, < 4)
data/README.md CHANGED
@@ -29,7 +29,7 @@ gems:
29
29
  ## Usage
30
30
 
31
31
  1. Run `rbs prototype rb` or `rbs prototype runtime` first
32
- 2. Run `rbs:prototype:heuristic`
32
+ 2. Run `rbs:prototype:heuristic:apply`
33
33
 
34
34
  Then rbs_heuristic_prototype will update the prototype signature files generated
35
35
  by `rbs prototype` according to the heuristic rules.
@@ -40,6 +40,11 @@ by `rbs prototype` according to the heuristic rules.
40
40
  * Convert a constant annotated with Array of Union of symbols (ex. `Array[:sym1 | :sym2 | ...]`) to a constant annotated with `Array[Symbol]`
41
41
  * This is useful to avoid `Ruby::IncompatibleAssignment` warning when right hand value uses `#freeze` method
42
42
  * ref: https://github.com/soutaro/steep/issues/363
43
+ * Rule 3:
44
+ * Convert a callback method of ActiveModel subclass to a method returning "void" (ex. `before_save` callback)
45
+ * Rule 4:
46
+ * Convert a scoped module/class definition (ex. `Foo::Bar::Baz`) to the nested definitions
47
+ * This is useful to define intermediate modules automatically like what Rails and zeitwerk does.
43
48
 
44
49
  ## Development
45
50
 
@@ -64,7 +69,5 @@ The gem is available as open source under the terms of the [MIT License](https:/
64
69
 
65
70
  ## Code of Conduct
66
71
 
67
-
68
-
69
72
  Everyone interacting in the RbsHeuristicPrototype project's codebases, issue trackers is
70
73
  expected to follow the [code of conduct](https://github.com/tk0miya/rbs_heuristic_prototype/blob/main/CODE_OF_CONDUCT.md).
data/Steepfile CHANGED
@@ -5,8 +5,7 @@ D = Steep::Diagnostic
5
5
  target :lib do
6
6
  signature "sig"
7
7
 
8
- check "lib" # Directory name
9
- check "Gemfile" # File name
8
+ check "lib"
10
9
 
11
- configure_code_diagnostics(D::Ruby.lenient) # `lenient` diagnostics setting
10
+ configure_code_diagnostics(D::Ruby.lenient)
12
11
  end
@@ -7,7 +7,7 @@ module RbsHeuristicPrototype
7
7
  def create_raketask
8
8
  create_file "lib/tasks/rbs_heuristic_prototype.rake", <<~RUBY
9
9
  begin
10
- require 'rbs_heuristic_prototype/rake_task'
10
+ require 'rbs_heuristic_prototype'
11
11
  RbsHeuristicPrototype::RakeTask.new
12
12
  rescue LoadError
13
13
  # failed to load rbs_heuristic_prototype. Skip to load rbs_heuristic_prototype tasks.
@@ -8,11 +8,16 @@ module RbsHeuristicPrototype
8
8
  attr_reader :klass
9
9
 
10
10
  def process_class(decl)
11
- @klass = const_get(decl)
11
+ klass = const_get(decl)
12
12
 
13
- return decl unless klass&.ancestors&.include?(ActiveModel::Validations)
14
-
15
- super
13
+ if klass&.ancestors&.include?(ActiveModel::Validations)
14
+ @klass = klass
15
+ super
16
+ else
17
+ decl
18
+ end
19
+ ensure
20
+ @klass = nil
16
21
  end
17
22
 
18
23
  def process_member(member)
@@ -84,8 +84,9 @@ module RbsHeuristicPrototype
84
84
  end
85
85
 
86
86
  def const_get(decl)
87
- decl.name.to_namespace.path.inject(Kernel) do |const, mod|
88
- const.const_get(mod)
87
+ init = Kernel # : singleton(Class)?
88
+ decl.name.to_namespace.path.inject(init) do |const, mod|
89
+ const&.const_get(mod)
89
90
  end
90
91
  rescue StandardError
91
92
  nil
@@ -0,0 +1,90 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "base"
4
+
5
+ module RbsHeuristicPrototype
6
+ module Filters
7
+ class DeepModuleFilter < Base
8
+ attr_reader :stack
9
+
10
+ def initialize(env)
11
+ super
12
+ @stack = [::Kernel]
13
+ end
14
+
15
+ def process_module(decl) # rubocop:disable Metrics/AbcSize
16
+ if decl.name.namespace.empty?
17
+ namespaces = []
18
+ stack << const_get(decl)
19
+ super
20
+ else
21
+ namespaces = namespace_to_decl!(decl.name.namespace)
22
+ decl = decl.dup
23
+ decl.instance_eval { @name = RBS::TypeName.new(name: name.name, namespace: RBS::Namespace.empty) }
24
+ (_ = namespaces.last).members << super
25
+ namespaces.first or raise
26
+ end
27
+ ensure
28
+ namespaces.size.succ.times { stack.pop }
29
+ end
30
+
31
+ def process_class(decl) # rubocop:disable Metrics/AbcSize
32
+ if decl.name.namespace.empty?
33
+ namespaces = []
34
+ stack << const_get(decl)
35
+ super
36
+ else
37
+ namespaces = namespace_to_decl!(decl.name.namespace)
38
+ decl = decl.dup
39
+ decl.instance_eval { @name = RBS::TypeName.new(name: name.name, namespace: RBS::Namespace.empty) }
40
+ stack << stack.last&.const_get(decl.name.name)
41
+ (_ = namespaces.last).members << super
42
+ namespaces.first or raise
43
+ end
44
+ ensure
45
+ namespaces.size.succ.times { stack.pop }
46
+ end
47
+
48
+ def namespace_to_decl!(namespace)
49
+ namespaces = []
50
+ namespace.path.each do |path|
51
+ obj = stack.last&.const_get(path)
52
+ stack << obj
53
+ decl = obj_to_decl(obj)
54
+ namespaces.last.members << decl unless namespaces.empty?
55
+ namespaces << decl
56
+ end
57
+ namespaces
58
+ end
59
+
60
+ def obj_to_decl(obj) # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
61
+ if obj.is_a?(Class)
62
+ if (superclass = obj.superclass)
63
+ super_class = RBS::AST::Declarations::Class::Super.new(name: TypeName(superclass.name.to_s),
64
+ args: [],
65
+ location: nil)
66
+ end
67
+ RBS::AST::Declarations::Class.new(
68
+ name: TypeName(obj.name.to_s.split("::").last.to_s),
69
+ type_params: [],
70
+ super_class:,
71
+ members: [],
72
+ annotations: [],
73
+ location: nil,
74
+ comment: nil
75
+ )
76
+ else
77
+ RBS::AST::Declarations::Module.new(
78
+ name: TypeName(obj.name.to_s.split("::").last.to_s),
79
+ type_params: [],
80
+ members: [],
81
+ self_types: [],
82
+ annotations: [],
83
+ location: nil,
84
+ comment: nil
85
+ )
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end
@@ -19,11 +19,9 @@ module RbsHeuristicPrototype
19
19
  end
20
20
 
21
21
  def process_constant_type(type)
22
- # @type var location: untyped
23
22
  name = RBS::TypeName.new(namespace: RBS::Namespace.root, name: :Symbol)
24
- location = type.location
25
- symbol = RBS::Types::Alias.new(name:, args: [], location:)
26
- RBS::Types::ClassInstance.new(name: type.name, args: [symbol], location:)
23
+ symbol = RBS::Types::Alias.new(name:, args: [], location: type.location)
24
+ RBS::Types::ClassInstance.new(name: type.name, args: [symbol], location: type.location)
27
25
  end
28
26
 
29
27
  def symbol_array?(type)
@@ -9,6 +9,7 @@ module RbsHeuristicPrototype
9
9
  FILTERS = {
10
10
  active_model_validations: Filters::ActiveModelValidationsFilter,
11
11
  boolean_methods: Filters::BooleanMethodsFilter,
12
+ deep_module: Filters::DeepModuleFilter,
12
13
  symbol_array_constants: Filters::SymbolArrayConstantsFilter
13
14
  }.freeze
14
15
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RbsHeuristicPrototype
4
- VERSION = "0.1.0"
4
+ VERSION = "0.3.0"
5
5
  end
@@ -2,6 +2,7 @@
2
2
 
3
3
  require_relative "rbs_heuristic_prototype/filters/active_model_validations_filter"
4
4
  require_relative "rbs_heuristic_prototype/filters/boolean_methods_filter"
5
+ require_relative "rbs_heuristic_prototype/filters/deep_module_filter"
5
6
  require_relative "rbs_heuristic_prototype/filters/symbol_array_constants_filter"
6
7
  require_relative "rbs_heuristic_prototype/rake_task"
7
8
  require_relative "rbs_heuristic_prototype/version"
@@ -2,7 +2,7 @@
2
2
  sources:
3
3
  - type: git
4
4
  name: ruby/gem_rbs_collection
5
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
5
+ revision: aeede7258d020bfd509541e0c8075ce833292409
6
6
  remote: https://github.com/ruby/gem_rbs_collection.git
7
7
  repo_dir: gems
8
8
  path: ".gem_rbs_collection"
@@ -16,7 +16,7 @@ gems:
16
16
  source:
17
17
  type: git
18
18
  name: ruby/gem_rbs_collection
19
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
19
+ revision: aeede7258d020bfd509541e0c8075ce833292409
20
20
  remote: https://github.com/ruby/gem_rbs_collection.git
21
21
  repo_dir: gems
22
22
  - name: actionview
@@ -24,7 +24,7 @@ gems:
24
24
  source:
25
25
  type: git
26
26
  name: ruby/gem_rbs_collection
27
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
27
+ revision: aeede7258d020bfd509541e0c8075ce833292409
28
28
  remote: https://github.com/ruby/gem_rbs_collection.git
29
29
  repo_dir: gems
30
30
  - name: activemodel
@@ -32,7 +32,7 @@ gems:
32
32
  source:
33
33
  type: git
34
34
  name: ruby/gem_rbs_collection
35
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
35
+ revision: aeede7258d020bfd509541e0c8075ce833292409
36
36
  remote: https://github.com/ruby/gem_rbs_collection.git
37
37
  repo_dir: gems
38
38
  - name: activerecord
@@ -40,7 +40,7 @@ gems:
40
40
  source:
41
41
  type: git
42
42
  name: ruby/gem_rbs_collection
43
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
43
+ revision: aeede7258d020bfd509541e0c8075ce833292409
44
44
  remote: https://github.com/ruby/gem_rbs_collection.git
45
45
  repo_dir: gems
46
46
  - name: activesupport
@@ -48,7 +48,7 @@ gems:
48
48
  source:
49
49
  type: git
50
50
  name: ruby/gem_rbs_collection
51
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
51
+ revision: aeede7258d020bfd509541e0c8075ce833292409
52
52
  remote: https://github.com/ruby/gem_rbs_collection.git
53
53
  repo_dir: gems
54
54
  - name: ast
@@ -56,7 +56,7 @@ gems:
56
56
  source:
57
57
  type: git
58
58
  name: ruby/gem_rbs_collection
59
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
59
+ revision: aeede7258d020bfd509541e0c8075ce833292409
60
60
  remote: https://github.com/ruby/gem_rbs_collection.git
61
61
  repo_dir: gems
62
62
  - name: cgi
@@ -68,7 +68,7 @@ gems:
68
68
  source:
69
69
  type: git
70
70
  name: ruby/gem_rbs_collection
71
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
71
+ revision: aeede7258d020bfd509541e0c8075ce833292409
72
72
  remote: https://github.com/ruby/gem_rbs_collection.git
73
73
  repo_dir: gems
74
74
  - name: date
@@ -80,7 +80,7 @@ gems:
80
80
  source:
81
81
  type: git
82
82
  name: ruby/gem_rbs_collection
83
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
83
+ revision: aeede7258d020bfd509541e0c8075ce833292409
84
84
  remote: https://github.com/ruby/gem_rbs_collection.git
85
85
  repo_dir: gems
86
86
  - name: json
@@ -108,7 +108,7 @@ gems:
108
108
  source:
109
109
  type: git
110
110
  name: ruby/gem_rbs_collection
111
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
111
+ revision: aeede7258d020bfd509541e0c8075ce833292409
112
112
  remote: https://github.com/ruby/gem_rbs_collection.git
113
113
  repo_dir: gems
114
114
  - name: optparse
@@ -120,7 +120,7 @@ gems:
120
120
  source:
121
121
  type: git
122
122
  name: ruby/gem_rbs_collection
123
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
123
+ revision: aeede7258d020bfd509541e0c8075ce833292409
124
124
  remote: https://github.com/ruby/gem_rbs_collection.git
125
125
  repo_dir: gems
126
126
  - name: pathname
@@ -132,7 +132,7 @@ gems:
132
132
  source:
133
133
  type: git
134
134
  name: ruby/gem_rbs_collection
135
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
135
+ revision: aeede7258d020bfd509541e0c8075ce833292409
136
136
  remote: https://github.com/ruby/gem_rbs_collection.git
137
137
  repo_dir: gems
138
138
  - name: rails-dom-testing
@@ -140,7 +140,7 @@ gems:
140
140
  source:
141
141
  type: git
142
142
  name: ruby/gem_rbs_collection
143
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
143
+ revision: aeede7258d020bfd509541e0c8075ce833292409
144
144
  remote: https://github.com/ruby/gem_rbs_collection.git
145
145
  repo_dir: gems
146
146
  - name: railties
@@ -148,7 +148,7 @@ gems:
148
148
  source:
149
149
  type: git
150
150
  name: ruby/gem_rbs_collection
151
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
151
+ revision: aeede7258d020bfd509541e0c8075ce833292409
152
152
  remote: https://github.com/ruby/gem_rbs_collection.git
153
153
  repo_dir: gems
154
154
  - name: rainbow
@@ -156,17 +156,21 @@ gems:
156
156
  source:
157
157
  type: git
158
158
  name: ruby/gem_rbs_collection
159
- revision: 80c41dad0190d5968841b8e892523e5031fa3eb1
159
+ revision: aeede7258d020bfd509541e0c8075ce833292409
160
160
  remote: https://github.com/ruby/gem_rbs_collection.git
161
161
  repo_dir: gems
162
162
  - name: rbs
163
- version: 3.1.0
163
+ version: 3.1.1
164
164
  source:
165
165
  type: rubygems
166
166
  - name: rdoc
167
167
  version: '0'
168
168
  source:
169
169
  type: stdlib
170
+ - name: securerandom
171
+ version: '0'
172
+ source:
173
+ type: stdlib
170
174
  - name: singleton
171
175
  version: '0'
172
176
  source:
@@ -1,7 +1,9 @@
1
1
  module RbsHeuristicPrototype
2
2
  module Filters
3
3
  class ActiveModelValidationsFilter < Base
4
- @klass: Class?
4
+ attr_reader klass: singleton(ActiveModel::Validations)?
5
+
6
+ @klass: singleton(ActiveModel::Validations)?
5
7
 
6
8
  def process_class: (RBS::AST::Declarations::Class decl) -> RBS::AST::Declarations::Class
7
9
  def process_member: (RBS::AST::Members::t member) -> RBS::AST::Members::t
@@ -10,7 +10,7 @@ module RbsHeuristicPrototype
10
10
  def process_class: (RBS::AST::Declarations::Class decl) -> RBS::AST::Declarations::Class
11
11
  def process_constant: (RBS::AST::Declarations::Constant member) -> RBS::AST::Declarations::Constant
12
12
  def process_member: (RBS::AST::Members::t member) -> RBS::AST::Members::t
13
- def const_get: (RBS::AST::Declarations::t decl) -> Class?
13
+ def const_get: (RBS::AST::Declarations::Class | RBS::AST::Declarations::Module decl) -> singleton(Class)?
14
14
  end
15
15
  end
16
16
  end
@@ -0,0 +1,15 @@
1
+ module RbsHeuristicPrototype
2
+ module Filters
3
+ class DeepModuleFilter < Base
4
+ attr_reader stack: Array[Module | Class | nil]
5
+
6
+ @stack: Array[Module | Class | nil]
7
+
8
+ def initialize: (RBS::Environment env) -> void
9
+ def process_module: (RBS::AST::Declarations::Module decl) -> RBS::AST::Declarations::t
10
+ def process_class: (RBS::AST::Declarations::Class decl) -> RBS::AST::Declarations::t
11
+ def namespace_to_decl!: (RBS::Namespace namespace) -> Array[RBS::AST::Declarations::Module | RBS::AST::Declarations::Class]
12
+ def obj_to_decl: (Module | Class obj) -> (RBS::AST::Declarations::Module | RBS::AST::Declarations::Class)
13
+ end
14
+ end
15
+ end
@@ -2,11 +2,11 @@ module RbsHeuristicPrototype
2
2
  module Filters
3
3
  class SymbolArrayConstantsFilter < Base
4
4
  def process_constant: (RBS::AST::Declarations::Constant constant) -> RBS::AST::Declarations::Constant
5
- def process_constant_type: (RBS::Types::t type) -> RBS::Types::ClassInstance
6
- def symbol_array?: (RBS::Types::t type) -> bool
7
- def array?: (RBS::Types::t type) -> bool
8
- def symbol_union?: (RBS::Types::t type) -> bool
9
- def symbol?: (RBS::Types::t type) -> bool
5
+ def process_constant_type: (untyped type) -> RBS::Types::ClassInstance
6
+ def symbol_array?: (untyped type) -> bool
7
+ def array?: (untyped type) -> bool
8
+ def symbol_union?: (untyped type) -> bool
9
+ def symbol?: (untyped type) -> bool
10
10
  end
11
11
  end
12
12
  end
@@ -0,0 +1,5 @@
1
+ module ActiveModel
2
+ module Validations
3
+ def self.__callbacks: () -> Hash[Symbol, Array[untyped]]
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ class Thor
2
+ module Actions
3
+ def create_file: (String destination, *String? args, ?config: bool) ?{ () -> void } -> untyped
4
+ end
5
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbs_heuristic_prototype
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Takeshi KOMIYA
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-07-15 00:00:00.000000000 Z
11
+ date: 2023-07-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rbs
@@ -47,6 +47,7 @@ files:
47
47
  - lib/rbs_heuristic_prototype/filters/active_model_validations_filter.rb
48
48
  - lib/rbs_heuristic_prototype/filters/base.rb
49
49
  - lib/rbs_heuristic_prototype/filters/boolean_methods_filter.rb
50
+ - lib/rbs_heuristic_prototype/filters/deep_module_filter.rb
50
51
  - lib/rbs_heuristic_prototype/filters/symbol_array_constants_filter.rb
51
52
  - lib/rbs_heuristic_prototype/rake_task.rb
52
53
  - lib/rbs_heuristic_prototype/version.rb
@@ -59,8 +60,11 @@ files:
59
60
  - sig/rbs_heuristic_prototype/filters/active_model_validations_filter.rbs
60
61
  - sig/rbs_heuristic_prototype/filters/base.rbs
61
62
  - sig/rbs_heuristic_prototype/filters/boolean_methods_filter.rbs
63
+ - sig/rbs_heuristic_prototype/filters/deep_module_filter.rbs
62
64
  - sig/rbs_heuristic_prototype/filters/symbol_array_constants_filter.rbs
63
65
  - sig/rbs_heuristic_prototype/rake_task.rbs
66
+ - sig/shims/active_model.rbs
67
+ - sig/shims/thor.rbs
64
68
  homepage: https://github.com/tk0miya/rbs_heuristic_prototype
65
69
  licenses:
66
70
  - MIT