leftovers 0.2.2 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (146) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +41 -0
  3. data/README.md +35 -49
  4. data/docs/Configuration.md +627 -0
  5. data/exe/leftovers +2 -2
  6. data/leftovers.gemspec +13 -7
  7. data/lib/config/attr_encrypted.yml +3 -4
  8. data/lib/config/audited.yml +9 -4
  9. data/lib/config/datagrid.yml +1 -1
  10. data/lib/config/flipper.yml +1 -3
  11. data/lib/config/graphql.yml +15 -13
  12. data/lib/config/okcomputer.yml +1 -3
  13. data/lib/config/parser.yml +89 -91
  14. data/lib/config/rails.yml +160 -97
  15. data/lib/config/redcarpet.yml +35 -38
  16. data/lib/config/rollbar.yml +1 -3
  17. data/lib/config/rspec.yml +18 -10
  18. data/lib/config/ruby.yml +42 -49
  19. data/lib/config/selenium-webdriver.yml +19 -0
  20. data/lib/config/sidekiq.yml +9 -0
  21. data/lib/config/will_paginate.yml +12 -14
  22. data/lib/leftovers.rb +61 -43
  23. data/lib/leftovers/ast.rb +8 -0
  24. data/lib/leftovers/ast/builder.rb +6 -3
  25. data/lib/leftovers/ast/node.rb +66 -107
  26. data/lib/leftovers/backports.rb +24 -40
  27. data/lib/leftovers/cli.rb +17 -14
  28. data/lib/leftovers/collector.rb +7 -11
  29. data/lib/leftovers/config.rb +38 -13
  30. data/lib/leftovers/config_validator.rb +60 -0
  31. data/lib/leftovers/config_validator/error_processor.rb +196 -0
  32. data/lib/leftovers/config_validator/schema_hash.rb +496 -0
  33. data/lib/leftovers/definition.rb +16 -41
  34. data/lib/leftovers/definition_node.rb +36 -0
  35. data/lib/leftovers/definition_set.rb +17 -24
  36. data/lib/leftovers/dynamic_processors.rb +11 -0
  37. data/lib/leftovers/dynamic_processors/call.rb +25 -0
  38. data/lib/leftovers/dynamic_processors/call_definition.rb +31 -0
  39. data/lib/leftovers/dynamic_processors/definition.rb +26 -0
  40. data/lib/leftovers/dynamic_processors/each.rb +19 -0
  41. data/lib/leftovers/dynamic_processors/null.rb +9 -0
  42. data/lib/leftovers/erb.rb +2 -2
  43. data/lib/leftovers/file.rb +3 -5
  44. data/lib/leftovers/file_collector.rb +82 -62
  45. data/lib/leftovers/file_list.rb +9 -15
  46. data/lib/leftovers/haml.rb +9 -12
  47. data/lib/leftovers/matcher_builders.rb +24 -0
  48. data/lib/leftovers/matcher_builders/and.rb +19 -0
  49. data/lib/leftovers/matcher_builders/and_not.rb +14 -0
  50. data/lib/leftovers/matcher_builders/argument_node_value.rb +21 -0
  51. data/lib/leftovers/matcher_builders/name.rb +29 -0
  52. data/lib/leftovers/matcher_builders/node.rb +40 -0
  53. data/lib/leftovers/matcher_builders/node_has_argument.rb +71 -0
  54. data/lib/leftovers/matcher_builders/node_has_keyword_argument.rb +22 -0
  55. data/lib/leftovers/matcher_builders/node_has_positional_argument.rb +24 -0
  56. data/lib/leftovers/matcher_builders/node_name.rb +15 -0
  57. data/lib/leftovers/matcher_builders/node_pair_name.rb +18 -0
  58. data/lib/leftovers/matcher_builders/node_pair_value.rb +16 -0
  59. data/lib/leftovers/matcher_builders/node_path.rb +14 -0
  60. data/lib/leftovers/matcher_builders/node_type.rb +28 -0
  61. data/lib/leftovers/matcher_builders/or.rb +73 -0
  62. data/lib/leftovers/matcher_builders/path.rb +15 -0
  63. data/lib/leftovers/matcher_builders/string.rb +11 -0
  64. data/lib/leftovers/matcher_builders/string_pattern.rb +19 -0
  65. data/lib/leftovers/matcher_builders/unless.rb +13 -0
  66. data/lib/leftovers/matchers.rb +26 -0
  67. data/lib/leftovers/matchers/all.rb +25 -0
  68. data/lib/leftovers/matchers/and.rb +24 -0
  69. data/lib/leftovers/matchers/any.rb +27 -0
  70. data/lib/leftovers/matchers/node_has_any_keyword_argument.rb +28 -0
  71. data/lib/leftovers/matchers/node_has_any_positional_argument_with_value.rb +25 -0
  72. data/lib/leftovers/matchers/node_has_positional_argument.rb +23 -0
  73. data/lib/leftovers/matchers/node_has_positional_argument_with_value.rb +25 -0
  74. data/lib/leftovers/matchers/node_name.rb +23 -0
  75. data/lib/leftovers/matchers/node_pair_value.rb +23 -0
  76. data/lib/leftovers/matchers/node_path.rb +23 -0
  77. data/lib/leftovers/matchers/node_scalar_value.rb +25 -0
  78. data/lib/leftovers/matchers/node_type.rb +23 -0
  79. data/lib/leftovers/matchers/not.rb +23 -0
  80. data/lib/leftovers/matchers/or.rb +26 -0
  81. data/lib/leftovers/merged_config.rb +24 -14
  82. data/lib/leftovers/parser.rb +2 -5
  83. data/lib/leftovers/processor_builders.rb +22 -0
  84. data/lib/leftovers/processor_builders/action.rb +63 -0
  85. data/lib/leftovers/processor_builders/add_prefix.rb +20 -0
  86. data/lib/leftovers/processor_builders/add_suffix.rb +20 -0
  87. data/lib/leftovers/processor_builders/argument.rb +25 -0
  88. data/lib/leftovers/processor_builders/dynamic.rb +27 -0
  89. data/lib/leftovers/processor_builders/each.rb +36 -0
  90. data/lib/leftovers/processor_builders/each_action.rb +51 -0
  91. data/lib/leftovers/processor_builders/each_dynamic.rb +54 -0
  92. data/lib/leftovers/processor_builders/each_for_definition_set.rb +36 -0
  93. data/lib/leftovers/processor_builders/itself.rb +13 -0
  94. data/lib/leftovers/processor_builders/keyword.rb +24 -0
  95. data/lib/leftovers/processor_builders/keyword_argument.rb +14 -0
  96. data/lib/leftovers/processor_builders/transform.rb +55 -0
  97. data/lib/leftovers/processor_builders/transform_chain.rb +24 -0
  98. data/lib/leftovers/processor_builders/transform_set.rb +47 -0
  99. data/lib/leftovers/processor_builders/value.rb +13 -0
  100. data/lib/leftovers/rake_task.rb +4 -4
  101. data/lib/leftovers/reporter.rb +1 -1
  102. data/lib/leftovers/value_processors.rb +40 -0
  103. data/lib/leftovers/value_processors/add_dynamic_prefix.rb +31 -0
  104. data/lib/leftovers/value_processors/add_dynamic_suffix.rb +31 -0
  105. data/lib/leftovers/value_processors/add_prefix.rb +20 -0
  106. data/lib/leftovers/value_processors/add_suffix.rb +20 -0
  107. data/lib/leftovers/value_processors/camelize.rb +24 -0
  108. data/lib/leftovers/value_processors/capitalize.rb +19 -0
  109. data/lib/leftovers/value_processors/deconstantize.rb +24 -0
  110. data/lib/leftovers/value_processors/delete_after.rb +22 -0
  111. data/lib/leftovers/value_processors/delete_before.rb +22 -0
  112. data/lib/leftovers/value_processors/delete_prefix.rb +26 -0
  113. data/lib/leftovers/value_processors/delete_suffix.rb +26 -0
  114. data/lib/leftovers/value_processors/demodulize.rb +24 -0
  115. data/lib/leftovers/value_processors/downcase.rb +19 -0
  116. data/lib/leftovers/value_processors/each.rb +21 -0
  117. data/lib/leftovers/value_processors/each_for_definition_set.rb +29 -0
  118. data/lib/leftovers/value_processors/each_keyword.rb +27 -0
  119. data/lib/leftovers/value_processors/each_keyword_argument.rb +27 -0
  120. data/lib/leftovers/value_processors/each_positional_argument.rb +24 -0
  121. data/lib/leftovers/value_processors/itself.rb +17 -0
  122. data/lib/leftovers/value_processors/keyword.rb +36 -0
  123. data/lib/leftovers/value_processors/keyword_argument.rb +36 -0
  124. data/lib/leftovers/value_processors/parameterize.rb +24 -0
  125. data/lib/leftovers/value_processors/placeholder.rb +18 -0
  126. data/lib/leftovers/value_processors/pluralize.rb +24 -0
  127. data/lib/leftovers/value_processors/positional_argument.rb +26 -0
  128. data/lib/leftovers/value_processors/replace_value.rb +18 -0
  129. data/lib/leftovers/value_processors/return_definition.rb +26 -0
  130. data/lib/leftovers/value_processors/return_string.rb +14 -0
  131. data/lib/leftovers/value_processors/singularize.rb +24 -0
  132. data/lib/leftovers/value_processors/split.rb +22 -0
  133. data/lib/leftovers/value_processors/swapcase.rb +19 -0
  134. data/lib/leftovers/value_processors/titleize.rb +24 -0
  135. data/lib/leftovers/value_processors/underscore.rb +24 -0
  136. data/lib/leftovers/value_processors/upcase.rb +19 -0
  137. data/lib/leftovers/version.rb +1 -1
  138. metadata +190 -28
  139. data/lib/config/selenium.yml +0 -21
  140. data/lib/leftovers/argument_rule.rb +0 -219
  141. data/lib/leftovers/core_ext.rb +0 -13
  142. data/lib/leftovers/hash_rule.rb +0 -40
  143. data/lib/leftovers/name_rule.rb +0 -53
  144. data/lib/leftovers/rule.rb +0 -74
  145. data/lib/leftovers/transform_rule.rb +0 -171
  146. data/lib/leftovers/value_rule.rb +0 -56
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Leftovers
4
+ module ValueProcessors
5
+ class PositionalArgument
6
+ def initialize(index, then_processor)
7
+ @index = index
8
+ @then_processor = then_processor
9
+
10
+ freeze
11
+ end
12
+
13
+ def process(_str, node, method_node)
14
+ positional_arguments = node.positional_arguments
15
+ return unless positional_arguments
16
+
17
+ argument_node = positional_arguments[@index]
18
+ return unless argument_node
19
+
20
+ str = argument_node.to_s if argument_node.string_or_symbol?
21
+
22
+ @then_processor.process(str, argument_node, method_node)
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Leftovers
4
+ module ValueProcessors
5
+ class ReplaceValue
6
+ def initialize(value, then_processor)
7
+ @value = value
8
+ @then_processor = then_processor
9
+
10
+ freeze
11
+ end
12
+
13
+ def process(_str, node, method_node)
14
+ @then_processor.process(@value, node, method_node)
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,26 @@
1
+ # frozen-string-literal: true
2
+
3
+ module Leftovers
4
+ module ValueProcessors
5
+ module ReturnDefinition
6
+ # :nocov:
7
+ using ::Leftovers::Backports::SetCaseEq if defined?(::Leftovers::Backports::SetCaseEq)
8
+ # :nocov:
9
+
10
+ def self.process(str, node, method_node)
11
+ return unless str
12
+ return if str.empty?
13
+
14
+ str_node = Leftovers::DefinitionNode.new(str.to_sym, method_node.path)
15
+
16
+ return :keep if ::Leftovers.config.keep === str_node
17
+
18
+ Leftovers::Definition.new(
19
+ str_node.name,
20
+ location: node.loc.expression,
21
+ test: method_node.test_line? || ::Leftovers.config.test_only === str_node
22
+ )
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Leftovers
4
+ module ValueProcessors
5
+ module ReturnString
6
+ def self.process(str, _node, _method_node)
7
+ return unless str
8
+ return if str.empty?
9
+
10
+ str.to_sym
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Leftovers
4
+ module ValueProcessors
5
+ class Singularize
6
+ def initialize(then_processor)
7
+ @then_processor = then_processor
8
+
9
+ freeze
10
+ end
11
+
12
+ def process(str, node, method_node)
13
+ return unless str
14
+
15
+ @then_processor.process(str.singularize, node, method_node)
16
+ rescue NoMethodError
17
+ Leftovers.error <<~MESSAGE
18
+ Tried using the String#singularize method, but the activesupport gem was not available and/or not required
19
+ `gem install activesupport`, and/or add `requires: 'active_support/core_ext/string'` to your .leftovers.yml
20
+ MESSAGE
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Leftovers
4
+ module ValueProcessors
5
+ class Split
6
+ def initialize(split_on, then_processor)
7
+ @split_on = split_on
8
+ @then_processor = then_processor
9
+
10
+ freeze
11
+ end
12
+
13
+ def process(str, node, method_node)
14
+ return unless str
15
+
16
+ str.split(@split_on).map do |substring|
17
+ @then_processor.process(substring, node, method_node)
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Leftovers
4
+ module ValueProcessors
5
+ class Swapcase
6
+ def initialize(then_processor)
7
+ @then_processor = then_processor
8
+
9
+ freeze
10
+ end
11
+
12
+ def process(str, node, method_node)
13
+ return unless str
14
+
15
+ @then_processor.process(str.swapcase, node, method_node)
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Leftovers
4
+ module ValueProcessors
5
+ class Titleize
6
+ def initialize(then_processor)
7
+ @then_processor = then_processor
8
+
9
+ freeze
10
+ end
11
+
12
+ def process(str, node, method_node)
13
+ return unless str
14
+
15
+ @then_processor.process(str.titleize, node, method_node)
16
+ rescue NoMethodError
17
+ Leftovers.error <<~MESSAGE
18
+ Tried using the String#titleize method, but the activesupport gem was not available and/or not required
19
+ `gem install activesupport`, and/or add `requires: 'active_support/core_ext/string'` to your .leftovers.yml
20
+ MESSAGE
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Leftovers
4
+ module ValueProcessors
5
+ class Underscore
6
+ def initialize(then_processor)
7
+ @then_processor = then_processor
8
+
9
+ freeze
10
+ end
11
+
12
+ def process(str, node, method_node)
13
+ return unless str
14
+
15
+ @then_processor.process(str.underscore, node, method_node)
16
+ rescue NoMethodError
17
+ Leftovers.error <<~MESSAGE
18
+ Tried using the String#underscore method, but the activesupport gem was not available and/or not required
19
+ `gem install activesupport`, and/or add `requires: 'active_support/core_ext/string'` to your .leftovers.yml
20
+ MESSAGE
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Leftovers
4
+ module ValueProcessors
5
+ class Upcase
6
+ def initialize(then_processor)
7
+ @then_processor = then_processor
8
+
9
+ freeze
10
+ end
11
+
12
+ def process(str, node, method_node)
13
+ return unless str
14
+
15
+ @then_processor.process(str.upcase, node, method_node)
16
+ end
17
+ end
18
+ end
19
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Leftovers
4
- VERSION = '0.2.2'
4
+ VERSION = '0.4.2'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: leftovers
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dana Sherson
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-04-21 00:00:00.000000000 Z
11
+ date: 2020-11-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: benchmark-ips
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: bundler
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -70,16 +84,16 @@ dependencies:
70
84
  name: rake
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
- - - "~>"
87
+ - - ">="
74
88
  - !ruby/object:Gem::Version
75
- version: '10.0'
89
+ version: '13'
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
- - - "~>"
94
+ - - ">="
81
95
  - !ruby/object:Gem::Version
82
- version: '10.0'
96
+ version: '13'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: rspec
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -100,42 +114,84 @@ dependencies:
100
114
  requirements:
101
115
  - - "~>"
102
116
  - !ruby/object:Gem::Version
103
- version: '0.74'
117
+ version: 0.93.1
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
122
  - - "~>"
109
123
  - !ruby/object:Gem::Version
110
- version: '0.74'
124
+ version: 0.93.1
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: rubocop-performance
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
129
  - - "~>"
116
130
  - !ruby/object:Gem::Version
117
- version: '1.4'
131
+ version: 1.8.1
118
132
  type: :development
119
133
  prerelease: false
120
134
  version_requirements: !ruby/object:Gem::Requirement
121
135
  requirements:
122
136
  - - "~>"
123
137
  - !ruby/object:Gem::Version
124
- version: '1.4'
138
+ version: 1.8.1
125
139
  - !ruby/object:Gem::Dependency
126
140
  name: rubocop-rspec
127
141
  requirement: !ruby/object:Gem::Requirement
128
142
  requirements:
129
143
  - - "~>"
130
144
  - !ruby/object:Gem::Version
131
- version: '1.35'
145
+ version: 1.44.1
132
146
  type: :development
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
150
  - - "~>"
137
151
  - !ruby/object:Gem::Version
138
- version: '1.35'
152
+ version: 1.44.1
153
+ - !ruby/object:Gem::Dependency
154
+ name: simplecov
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: 0.18.5
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: 0.18.5
167
+ - !ruby/object:Gem::Dependency
168
+ name: simplecov-console
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
+ - !ruby/object:Gem::Dependency
182
+ name: tty_string
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ version: 0.2.1
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ">="
193
+ - !ruby/object:Gem::Version
194
+ version: 0.2.1
139
195
  - !ruby/object:Gem::Dependency
140
196
  name: spellr
141
197
  requirement: !ruby/object:Gem::Requirement
@@ -156,14 +212,28 @@ dependencies:
156
212
  requirements:
157
213
  - - ">="
158
214
  - !ruby/object:Gem::Version
159
- version: 0.10.0
215
+ version: 0.15.1
216
+ type: :runtime
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - ">="
221
+ - !ruby/object:Gem::Version
222
+ version: 0.15.1
223
+ - !ruby/object:Gem::Dependency
224
+ name: json_schemer
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - ">="
228
+ - !ruby/object:Gem::Version
229
+ version: '0'
160
230
  type: :runtime
161
231
  prerelease: false
162
232
  version_requirements: !ruby/object:Gem::Requirement
163
233
  requirements:
164
234
  - - ">="
165
235
  - !ruby/object:Gem::Version
166
- version: 0.10.0
236
+ version: '0'
167
237
  - !ruby/object:Gem::Dependency
168
238
  name: parallel
169
239
  requirement: !ruby/object:Gem::Requirement
@@ -192,7 +262,7 @@ dependencies:
192
262
  - - ">="
193
263
  - !ruby/object:Gem::Version
194
264
  version: '0'
195
- description:
265
+ description:
196
266
  email:
197
267
  - robot@dana.sh
198
268
  executables:
@@ -204,6 +274,7 @@ files:
204
274
  - Gemfile
205
275
  - LICENSE.txt
206
276
  - README.md
277
+ - docs/Configuration.md
207
278
  - exe/leftovers
208
279
  - leftovers.gemspec
209
280
  - lib/config/attr_encrypted.yml
@@ -226,34 +297,125 @@ files:
226
297
  - lib/config/rollbar.yml
227
298
  - lib/config/rspec.yml
228
299
  - lib/config/ruby.yml
229
- - lib/config/selenium.yml
300
+ - lib/config/selenium-webdriver.yml
301
+ - lib/config/sidekiq.yml
230
302
  - lib/config/simplecov.yml
231
303
  - lib/config/will_paginate.yml
232
304
  - lib/leftovers.rb
233
- - lib/leftovers/argument_rule.rb
305
+ - lib/leftovers/ast.rb
234
306
  - lib/leftovers/ast/builder.rb
235
307
  - lib/leftovers/ast/node.rb
236
308
  - lib/leftovers/backports.rb
237
309
  - lib/leftovers/cli.rb
238
310
  - lib/leftovers/collector.rb
239
311
  - lib/leftovers/config.rb
240
- - lib/leftovers/core_ext.rb
312
+ - lib/leftovers/config_validator.rb
313
+ - lib/leftovers/config_validator/error_processor.rb
314
+ - lib/leftovers/config_validator/schema_hash.rb
241
315
  - lib/leftovers/definition.rb
316
+ - lib/leftovers/definition_node.rb
242
317
  - lib/leftovers/definition_set.rb
318
+ - lib/leftovers/dynamic_processors.rb
319
+ - lib/leftovers/dynamic_processors/call.rb
320
+ - lib/leftovers/dynamic_processors/call_definition.rb
321
+ - lib/leftovers/dynamic_processors/definition.rb
322
+ - lib/leftovers/dynamic_processors/each.rb
323
+ - lib/leftovers/dynamic_processors/null.rb
243
324
  - lib/leftovers/erb.rb
244
325
  - lib/leftovers/file.rb
245
326
  - lib/leftovers/file_collector.rb
246
327
  - lib/leftovers/file_list.rb
247
328
  - lib/leftovers/haml.rb
248
- - lib/leftovers/hash_rule.rb
329
+ - lib/leftovers/matcher_builders.rb
330
+ - lib/leftovers/matcher_builders/and.rb
331
+ - lib/leftovers/matcher_builders/and_not.rb
332
+ - lib/leftovers/matcher_builders/argument_node_value.rb
333
+ - lib/leftovers/matcher_builders/name.rb
334
+ - lib/leftovers/matcher_builders/node.rb
335
+ - lib/leftovers/matcher_builders/node_has_argument.rb
336
+ - lib/leftovers/matcher_builders/node_has_keyword_argument.rb
337
+ - lib/leftovers/matcher_builders/node_has_positional_argument.rb
338
+ - lib/leftovers/matcher_builders/node_name.rb
339
+ - lib/leftovers/matcher_builders/node_pair_name.rb
340
+ - lib/leftovers/matcher_builders/node_pair_value.rb
341
+ - lib/leftovers/matcher_builders/node_path.rb
342
+ - lib/leftovers/matcher_builders/node_type.rb
343
+ - lib/leftovers/matcher_builders/or.rb
344
+ - lib/leftovers/matcher_builders/path.rb
345
+ - lib/leftovers/matcher_builders/string.rb
346
+ - lib/leftovers/matcher_builders/string_pattern.rb
347
+ - lib/leftovers/matcher_builders/unless.rb
348
+ - lib/leftovers/matchers.rb
349
+ - lib/leftovers/matchers/all.rb
350
+ - lib/leftovers/matchers/and.rb
351
+ - lib/leftovers/matchers/any.rb
352
+ - lib/leftovers/matchers/node_has_any_keyword_argument.rb
353
+ - lib/leftovers/matchers/node_has_any_positional_argument_with_value.rb
354
+ - lib/leftovers/matchers/node_has_positional_argument.rb
355
+ - lib/leftovers/matchers/node_has_positional_argument_with_value.rb
356
+ - lib/leftovers/matchers/node_name.rb
357
+ - lib/leftovers/matchers/node_pair_value.rb
358
+ - lib/leftovers/matchers/node_path.rb
359
+ - lib/leftovers/matchers/node_scalar_value.rb
360
+ - lib/leftovers/matchers/node_type.rb
361
+ - lib/leftovers/matchers/not.rb
362
+ - lib/leftovers/matchers/or.rb
249
363
  - lib/leftovers/merged_config.rb
250
- - lib/leftovers/name_rule.rb
251
364
  - lib/leftovers/parser.rb
365
+ - lib/leftovers/processor_builders.rb
366
+ - lib/leftovers/processor_builders/action.rb
367
+ - lib/leftovers/processor_builders/add_prefix.rb
368
+ - lib/leftovers/processor_builders/add_suffix.rb
369
+ - lib/leftovers/processor_builders/argument.rb
370
+ - lib/leftovers/processor_builders/dynamic.rb
371
+ - lib/leftovers/processor_builders/each.rb
372
+ - lib/leftovers/processor_builders/each_action.rb
373
+ - lib/leftovers/processor_builders/each_dynamic.rb
374
+ - lib/leftovers/processor_builders/each_for_definition_set.rb
375
+ - lib/leftovers/processor_builders/itself.rb
376
+ - lib/leftovers/processor_builders/keyword.rb
377
+ - lib/leftovers/processor_builders/keyword_argument.rb
378
+ - lib/leftovers/processor_builders/transform.rb
379
+ - lib/leftovers/processor_builders/transform_chain.rb
380
+ - lib/leftovers/processor_builders/transform_set.rb
381
+ - lib/leftovers/processor_builders/value.rb
252
382
  - lib/leftovers/rake_task.rb
253
383
  - lib/leftovers/reporter.rb
254
- - lib/leftovers/rule.rb
255
- - lib/leftovers/transform_rule.rb
256
- - lib/leftovers/value_rule.rb
384
+ - lib/leftovers/value_processors.rb
385
+ - lib/leftovers/value_processors/add_dynamic_prefix.rb
386
+ - lib/leftovers/value_processors/add_dynamic_suffix.rb
387
+ - lib/leftovers/value_processors/add_prefix.rb
388
+ - lib/leftovers/value_processors/add_suffix.rb
389
+ - lib/leftovers/value_processors/camelize.rb
390
+ - lib/leftovers/value_processors/capitalize.rb
391
+ - lib/leftovers/value_processors/deconstantize.rb
392
+ - lib/leftovers/value_processors/delete_after.rb
393
+ - lib/leftovers/value_processors/delete_before.rb
394
+ - lib/leftovers/value_processors/delete_prefix.rb
395
+ - lib/leftovers/value_processors/delete_suffix.rb
396
+ - lib/leftovers/value_processors/demodulize.rb
397
+ - lib/leftovers/value_processors/downcase.rb
398
+ - lib/leftovers/value_processors/each.rb
399
+ - lib/leftovers/value_processors/each_for_definition_set.rb
400
+ - lib/leftovers/value_processors/each_keyword.rb
401
+ - lib/leftovers/value_processors/each_keyword_argument.rb
402
+ - lib/leftovers/value_processors/each_positional_argument.rb
403
+ - lib/leftovers/value_processors/itself.rb
404
+ - lib/leftovers/value_processors/keyword.rb
405
+ - lib/leftovers/value_processors/keyword_argument.rb
406
+ - lib/leftovers/value_processors/parameterize.rb
407
+ - lib/leftovers/value_processors/placeholder.rb
408
+ - lib/leftovers/value_processors/pluralize.rb
409
+ - lib/leftovers/value_processors/positional_argument.rb
410
+ - lib/leftovers/value_processors/replace_value.rb
411
+ - lib/leftovers/value_processors/return_definition.rb
412
+ - lib/leftovers/value_processors/return_string.rb
413
+ - lib/leftovers/value_processors/singularize.rb
414
+ - lib/leftovers/value_processors/split.rb
415
+ - lib/leftovers/value_processors/swapcase.rb
416
+ - lib/leftovers/value_processors/titleize.rb
417
+ - lib/leftovers/value_processors/underscore.rb
418
+ - lib/leftovers/value_processors/upcase.rb
257
419
  - lib/leftovers/version.rb
258
420
  homepage: http://github.com/robotdana/leftovers
259
421
  licenses:
@@ -261,8 +423,8 @@ licenses:
261
423
  metadata:
262
424
  homepage_uri: http://github.com/robotdana/leftovers
263
425
  source_code_uri: http://github.com/robotdana/leftovers
264
- changelog_uri: http://github.com/robotdana/leftovers/blob/master/CHANGELOG.md
265
- post_install_message:
426
+ changelog_uri: http://github.com/robotdana/leftovers/blob/main/CHANGELOG.md
427
+ post_install_message:
266
428
  rdoc_options: []
267
429
  require_paths:
268
430
  - lib
@@ -270,7 +432,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
270
432
  requirements:
271
433
  - - ">="
272
434
  - !ruby/object:Gem::Version
273
- version: '0'
435
+ version: 2.4.0
274
436
  required_rubygems_version: !ruby/object:Gem::Requirement
275
437
  requirements:
276
438
  - - ">="
@@ -278,7 +440,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
278
440
  version: '0'
279
441
  requirements: []
280
442
  rubygems_version: 3.1.2
281
- signing_key:
443
+ signing_key:
282
444
  specification_version: 4
283
445
  summary: Find unused methods and classes/modules
284
446
  test_files: []