reek 4.8.1 → 4.8.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -0
  3. data/README.md +3 -3
  4. data/docs/Instance-Variable-Assumption.md +1 -1
  5. data/docs/Uncommunicative-Method-Name.md +2 -2
  6. data/docs/Uncommunicative-Module-Name.md +1 -1
  7. data/docs/Uncommunicative-Parameter-Name.md +1 -1
  8. data/features/command_line_interface/basic_usage.feature +2 -2
  9. data/features/command_line_interface/options.feature +1 -1
  10. data/features/command_line_interface/show_progress.feature +4 -4
  11. data/features/command_line_interface/smell_selection.feature +1 -1
  12. data/features/command_line_interface/smells_count.feature +6 -6
  13. data/features/command_line_interface/stdin.feature +5 -5
  14. data/features/configuration_files/accept_setting.feature +6 -6
  15. data/features/configuration_files/directory_specific_directives.feature +20 -20
  16. data/features/configuration_files/exclude_directives.feature +3 -3
  17. data/features/configuration_files/exclude_paths_directives.feature +4 -4
  18. data/features/configuration_files/masking_smells.feature +4 -4
  19. data/features/configuration_files/mix_accept_reject_setting.feature +7 -7
  20. data/features/configuration_files/reject_setting.feature +12 -12
  21. data/features/configuration_files/unused_private_method.feature +4 -4
  22. data/features/configuration_loading.feature +3 -3
  23. data/features/configuration_via_source_comments/erroneous_source_comments.feature +2 -2
  24. data/features/configuration_via_source_comments/well_formed_source_comments.feature +2 -2
  25. data/features/locales.feature +2 -2
  26. data/features/rake_task/rake_task.feature +15 -15
  27. data/features/reports/json.feature +1 -4
  28. data/features/reports/reports.feature +26 -26
  29. data/features/reports/yaml.feature +0 -3
  30. data/features/samples.feature +287 -287
  31. data/features/support/env.rb +2 -2
  32. data/features/todo_list.feature +10 -10
  33. data/lib/reek/cli/options.rb +2 -1
  34. data/lib/reek/documentation_link.rb +28 -0
  35. data/lib/reek/errors/bad_detector_configuration_key_in_comment_error.rb +3 -2
  36. data/lib/reek/errors/bad_detector_in_comment_error.rb +3 -2
  37. data/lib/reek/errors/garbage_detector_configuration_in_comment_error.rb +3 -2
  38. data/lib/reek/report/code_climate/code_climate_configuration.yml +1 -1
  39. data/lib/reek/report/formatter/wiki_link_warning_formatter.rb +2 -15
  40. data/lib/reek/smell_detectors/feature_envy.rb +1 -0
  41. data/lib/reek/smell_warning.rb +5 -0
  42. data/lib/reek/version.rb +1 -1
  43. data/spec/reek/documentation_link_spec.rb +20 -0
  44. data/spec/reek/report/json_report_spec.rb +2 -2
  45. data/spec/reek/report/yaml_report_spec.rb +2 -2
  46. data/spec/reek/smell_detectors/feature_envy_spec.rb +45 -0
  47. metadata +4 -2
@@ -27,11 +27,11 @@ Feature: Unused Private Method detector
27
27
  end
28
28
  end
29
29
  """
30
- When I run `reek -c config.reek sample.rb`
30
+ When I run reek -c config.reek sample.rb
31
31
  Then it reports:
32
32
  """
33
33
  sample.rb -- 1 warning:
34
- [4]:UnusedPrivateMethod: Outer::Smelly has the unused private instance method 'foobar' [https://github.com/troessner/reek/blob/master/docs/Unused-Private-Method.md]
34
+ [4]:UnusedPrivateMethod: Outer::Smelly has the unused private instance method 'foobar'
35
35
  """
36
36
 
37
37
  Scenario: Use regexes for excluding contexts
@@ -58,9 +58,9 @@ Feature: Unused Private Method detector
58
58
  end
59
59
  end
60
60
  """
61
- When I run `reek -c config.reek sample.rb`
61
+ When I run reek -c config.reek sample.rb
62
62
  Then it reports:
63
63
  """
64
64
  sample.rb -- 1 warning:
65
- [4]:UnusedPrivateMethod: Outer::Smelly has the unused private instance method 'foobar' [https://github.com/troessner/reek/blob/master/docs/Unused-Private-Method.md]
65
+ [4]:UnusedPrivateMethod: Outer::Smelly has the unused private instance method 'foobar'
66
66
  """
@@ -17,8 +17,8 @@ Feature: Offer different ways how to load configuration
17
17
  And it reports:
18
18
  """
19
19
  smelly.rb -- 2 warnings:
20
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
21
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
20
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
21
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
22
22
  """
23
23
 
24
24
  Scenario: Configuration via CLI
@@ -44,5 +44,5 @@ Feature: Offer different ways how to load configuration
44
44
  And it reports:
45
45
  """
46
46
  smelly.rb -- 1 warning:
47
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
47
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
48
48
  """
@@ -33,8 +33,8 @@ Feature: Erroneous source comments are handled properly
33
33
  And it reports:
34
34
  """
35
35
  smelly.rb -- 2 warnings:
36
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
37
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
36
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
37
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
38
38
  2 total warnings
39
39
  """
40
40
 
@@ -48,7 +48,7 @@ Feature: Well formed source comments are handled properly
48
48
  And it reports:
49
49
  """
50
50
  enable_detector_explicitly.rb -- 1 warning:
51
- [3]:TooManyInstanceVariables: Alfa has at least 5 instance variables [https://github.com/troessner/reek/blob/master/docs/Too-Many-Instance-Variables.md]
51
+ [3]:TooManyInstanceVariables: Alfa has at least 5 instance variables
52
52
  """
53
53
 
54
54
  Scenario: Configure smell detector with the basic exclude option as string
@@ -112,5 +112,5 @@ Feature: Well formed source comments are handled properly
112
112
  And it reports:
113
113
  """
114
114
  configure_detector_specific_option.rb -- 1 warning:
115
- [3]:TooManyInstanceVariables: Alfa has at least 3 instance variables [https://github.com/troessner/reek/blob/master/docs/Too-Many-Instance-Variables.md]
115
+ [3]:TooManyInstanceVariables: Alfa has at least 3 instance variables
116
116
  """
@@ -9,7 +9,7 @@ Feature: Handling different locales
9
9
  """
10
10
  puts 'こんにちは世界'
11
11
  """
12
- When I run `reek -V konnichiwa.rb`
12
+ When I run reek -V konnichiwa.rb
13
13
  Then it succeeds
14
14
  And it reports no errors
15
15
  And it reports:
@@ -23,7 +23,7 @@ Feature: Handling different locales
23
23
  """
24
24
  puts 'こんにちは世界'
25
25
  """
26
- When I run `reek -V konnichiwa.rb`
26
+ When I run reek -V konnichiwa.rb
27
27
  Then it succeeds
28
28
  And it reports no errors
29
29
  And it reports:
@@ -10,7 +10,7 @@ Feature: Reek can be driven through its Task
10
10
 
11
11
  Reek::Rake::Task.new do |t|
12
12
  t.source_files = 'smelly.rb'
13
- t.reek_opts = '--no-color'
13
+ t.reek_opts = '--no-color --no-wiki-links'
14
14
  end
15
15
  """
16
16
  When I run `rake reek`
@@ -18,8 +18,8 @@ Feature: Reek can be driven through its Task
18
18
  And it reports:
19
19
  """
20
20
  smelly.rb -- 2 warnings:
21
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
22
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
21
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
22
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
23
23
  """
24
24
 
25
25
  Scenario: source_files using a FileList instead of a String
@@ -30,7 +30,7 @@ Feature: Reek can be driven through its Task
30
30
 
31
31
  Reek::Rake::Task.new do |t|
32
32
  t.source_files = FileList['smelly.*']
33
- t.reek_opts = '--no-color'
33
+ t.reek_opts = '--no-color --no-wiki-links'
34
34
  end
35
35
  """
36
36
  When I run `rake reek`
@@ -38,8 +38,8 @@ Feature: Reek can be driven through its Task
38
38
  And it reports:
39
39
  """
40
40
  smelly.rb -- 2 warnings:
41
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
42
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
41
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
42
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
43
43
  """
44
44
 
45
45
  Scenario: name changes the task name
@@ -50,7 +50,7 @@ Feature: Reek can be driven through its Task
50
50
 
51
51
  Reek::Rake::Task.new('silky') do |t|
52
52
  t.source_files = 'smelly.rb'
53
- t.reek_opts = '--no-color'
53
+ t.reek_opts = '--no-color --no-wiki-links'
54
54
  end
55
55
  """
56
56
  When I run `rake silky`
@@ -58,8 +58,8 @@ Feature: Reek can be driven through its Task
58
58
  And it reports:
59
59
  """
60
60
  smelly.rb -- 2 warnings:
61
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
62
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
61
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
62
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
63
63
  """
64
64
 
65
65
  Scenario: verbose prints the reek command
@@ -86,7 +86,7 @@ Feature: Reek can be driven through its Task
86
86
  Reek::Rake::Task.new do |t|
87
87
  t.fail_on_error = false
88
88
  t.source_files = 'smelly.rb'
89
- t.reek_opts = '--no-color'
89
+ t.reek_opts = '--no-color --no-wiki-links'
90
90
  end
91
91
  """
92
92
  When I run `rake reek`
@@ -95,8 +95,8 @@ Feature: Reek can be driven through its Task
95
95
  And it reports:
96
96
  """
97
97
  smelly.rb -- 2 warnings:
98
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
99
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
98
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
99
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
100
100
  """
101
101
 
102
102
  Scenario: can be configured with config_file
@@ -124,7 +124,7 @@ Feature: Reek can be driven through its Task
124
124
 
125
125
  Reek::Rake::Task.new do |t|
126
126
  t.source_files = 'clean.rb'
127
- t.reek_opts = '--no-color'
127
+ t.reek_opts = '--no-color --no-wiki-links'
128
128
  end
129
129
  """
130
130
  When I set the environment variable "REEK_SRC" to "smelly.rb"
@@ -133,6 +133,6 @@ Feature: Reek can be driven through its Task
133
133
  And it reports:
134
134
  """
135
135
  smelly.rb -- 2 warnings:
136
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
137
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
136
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
137
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
138
138
  """
@@ -24,7 +24,6 @@ Feature: Report smells using simple JSON layout
24
24
  "context": "Smelly#x",
25
25
  "lines": [ 4 ],
26
26
  "message": "has the name 'x'",
27
- "wiki_link": "https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md",
28
27
  "name": "x"
29
28
  },
30
29
  {
@@ -33,7 +32,6 @@ Feature: Report smells using simple JSON layout
33
32
  "context": "Smelly#x",
34
33
  "lines": [ 5 ],
35
34
  "message": "has the variable name 'y'",
36
- "wiki_link": "https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md",
37
35
  "name": "y"
38
36
  }
39
37
  ]
@@ -52,8 +50,7 @@ Feature: Report smells using simple JSON layout
52
50
  "lines": [
53
51
  1
54
52
  ],
55
- "message": "has no descriptive comment",
56
- "wiki_link": "https://github.com/troessner/reek/blob/master/docs/Irresponsible-Module.md"
53
+ "message": "has no descriptive comment"
57
54
  }
58
55
  ]
59
56
  """
@@ -10,11 +10,11 @@ Feature: Correctly formatted reports
10
10
  And it reports:
11
11
  """
12
12
  smelly/dirty_one.rb -- 2 warnings:
13
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
14
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
13
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
14
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
15
15
  smelly/dirty_two.rb -- 2 warnings:
16
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
17
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
16
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
17
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
18
18
  4 total warnings
19
19
  """
20
20
 
@@ -30,11 +30,11 @@ Feature: Correctly formatted reports
30
30
  And it reports:
31
31
  """
32
32
  smelly/dirty_one.rb -- 2 warnings:
33
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
34
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
33
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
34
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
35
35
  smelly/dirty_two.rb -- 2 warnings:
36
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
37
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
36
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
37
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
38
38
  4 total warnings
39
39
  """
40
40
 
@@ -51,11 +51,11 @@ Feature: Correctly formatted reports
51
51
  And it reports:
52
52
  """
53
53
  smelly/dirty_two.rb -- 2 warnings:
54
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
55
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
54
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
55
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
56
56
  smelly/dirty_one.rb -- 2 warnings:
57
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
58
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
57
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
58
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
59
59
  4 total warnings
60
60
  """
61
61
 
@@ -110,8 +110,8 @@ Feature: Correctly formatted reports
110
110
  And it reports:
111
111
  """
112
112
  smelly.rb -- 2 warnings:
113
- UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
114
- UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
113
+ UncommunicativeMethodName: Smelly#x has the name 'x'
114
+ UncommunicativeVariableName: Smelly#x has the variable name 'y'
115
115
  """
116
116
 
117
117
  Examples:
@@ -127,8 +127,8 @@ Feature: Correctly formatted reports
127
127
  And it reports:
128
128
  """
129
129
  smelly.rb -- 2 warnings:
130
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
131
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
130
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
131
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
132
132
  """
133
133
 
134
134
  Examples:
@@ -144,8 +144,8 @@ Feature: Correctly formatted reports
144
144
  And it reports:
145
145
  """
146
146
  smelly.rb -- 2 warnings:
147
- smelly.rb:4: UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
148
- smelly.rb:5: UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
147
+ smelly.rb:4: UncommunicativeMethodName: Smelly#x has the name 'x'
148
+ smelly.rb:5: UncommunicativeVariableName: Smelly#x has the variable name 'y'
149
149
  """
150
150
 
151
151
  Examples:
@@ -162,11 +162,11 @@ Feature: Correctly formatted reports
162
162
  And it reports:
163
163
  """
164
164
  smelly/dirty_one.rb -- 2 warnings:
165
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
166
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
165
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
166
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
167
167
  smelly/dirty_two.rb -- 2 warnings:
168
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
169
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
168
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x'
169
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y'
170
170
  4 total warnings
171
171
  """
172
172
 
@@ -182,8 +182,8 @@ Feature: Correctly formatted reports
182
182
  And it reports:
183
183
  """
184
184
  smelly.rb -- 2 warnings:
185
- [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
186
- [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
185
+ [4]:UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/v4.8.1/docs/Uncommunicative-Method-Name.md]
186
+ [5]:UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/v4.8.1/docs/Uncommunicative-Variable-Name.md]
187
187
  """
188
188
 
189
189
  Examples:
@@ -209,8 +209,8 @@ Feature: Correctly formatted reports
209
209
  And it reports:
210
210
  """
211
211
  smelly.rb -- 2 warnings:
212
- UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
213
- UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
212
+ UncommunicativeMethodName: Smelly#x has the name 'x' [https://github.com/troessner/reek/blob/v4.8.1/docs/Uncommunicative-Method-Name.md]
213
+ UncommunicativeVariableName: Smelly#x has the variable name 'y' [https://github.com/troessner/reek/blob/v4.8.1/docs/Uncommunicative-Variable-Name.md]
214
214
  """
215
215
 
216
216
  Examples:
@@ -25,7 +25,6 @@ Feature: Report smells using simple YAML layout
25
25
  smell_type: UncommunicativeMethodName
26
26
  source: smelly.rb
27
27
  name: x
28
- wiki_link: https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md
29
28
  - context: Smelly#x
30
29
  lines:
31
30
  - 5
@@ -33,7 +32,6 @@ Feature: Report smells using simple YAML layout
33
32
  smell_type: UncommunicativeVariableName
34
33
  source: smelly.rb
35
34
  name: y
36
- wiki_link: https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md
37
35
  """
38
36
 
39
37
  Scenario: Indicate smells and print them as yaml when using STDIN
@@ -48,5 +46,4 @@ Feature: Report smells using simple YAML layout
48
46
  lines:
49
47
  - 1
50
48
  message: has no descriptive comment
51
- wiki_link: https://github.com/troessner/reek/blob/master/docs/Irresponsible-Module.md
52
49
  """
@@ -12,294 +12,294 @@ Feature: Basic smell detection
12
12
  And it reports:
13
13
  """
14
14
  inline.rb -- 51 warnings:
15
- BooleanParameter: Inline::C#parse_signature has boolean parameter 'raw' [https://github.com/troessner/reek/blob/master/docs/Boolean-Parameter.md]
16
- ClassVariable: Inline declares the class variable '@@directory' [https://github.com/troessner/reek/blob/master/docs/Class-Variable.md]
17
- ClassVariable: Inline declares the class variable '@@rootdir' [https://github.com/troessner/reek/blob/master/docs/Class-Variable.md]
18
- ClassVariable: Inline::C declares the class variable '@@type_map' [https://github.com/troessner/reek/blob/master/docs/Class-Variable.md]
19
- ControlParameter: Inline::C#parse_signature is controlled by argument 'raw' [https://github.com/troessner/reek/blob/master/docs/Control-Parameter.md]
20
- DataClump: Inline::C takes parameters ['options', 'src'] to 5 methods [https://github.com/troessner/reek/blob/master/docs/Data-Clump.md]
21
- DuplicateMethodCall: Inline#self.rootdir calls 'env.nil?' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
22
- DuplicateMethodCall: Inline::C#build calls '$? != 0' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
23
- DuplicateMethodCall: Inline::C#build calls 'Inline.directory' 5 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
24
- DuplicateMethodCall: Inline::C#build calls 'io.puts "#endif"' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
25
- DuplicateMethodCall: Inline::C#build calls 'io.puts "#ifdef __cplusplus"' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
26
- DuplicateMethodCall: Inline::C#build calls 'io.puts' 6 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
27
- DuplicateMethodCall: Inline::C#build calls 'warn "Output:\n#{result}"' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
28
- DuplicateMethodCall: Inline::C#crap_for_windoze calls 'Config::CONFIG['libdir']' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
29
- DuplicateMethodCall: Inline::C#generate calls 'result.sub!(/\A\n/, '')' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
30
- DuplicateMethodCall: Inline::C#generate calls 'signature['args']' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
31
- DuplicateMethodCall: Inline::C#generate calls 'signature['args'].map' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
32
- DuplicateMethodCall: Inline::C#initialize calls 'stack.empty?' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
33
- DuplicateMethodCall: Module#inline calls 'Inline.const_get(lang)' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
34
- DuplicateMethodCall: Module#inline calls 'options[:testing]' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
35
- InstanceVariableAssumption: Inline::C assumes too much for instance variable '@module_name' [https://github.com/troessner/reek/blob/master/docs/Instance-Variable-Assumption.md]
36
- InstanceVariableAssumption: Inline::C assumes too much for instance variable '@so_name' [https://github.com/troessner/reek/blob/master/docs/Instance-Variable-Assumption.md]
37
- InstanceVariableAssumption: Inline::C assumes too much for instance variable '@types' [https://github.com/troessner/reek/blob/master/docs/Instance-Variable-Assumption.md]
38
- IrresponsibleModule: CompilationError has no descriptive comment [https://github.com/troessner/reek/blob/master/docs/Irresponsible-Module.md]
39
- IrresponsibleModule: Dir has no descriptive comment [https://github.com/troessner/reek/blob/master/docs/Irresponsible-Module.md]
40
- IrresponsibleModule: File has no descriptive comment [https://github.com/troessner/reek/blob/master/docs/Irresponsible-Module.md]
41
- IrresponsibleModule: Module has no descriptive comment [https://github.com/troessner/reek/blob/master/docs/Irresponsible-Module.md]
42
- NestedIterators: Inline::C#build contains iterators nested 2 deep [https://github.com/troessner/reek/blob/master/docs/Nested-Iterators.md]
43
- NilCheck: Inline#self.rootdir performs a nil-check [https://github.com/troessner/reek/blob/master/docs/Nil-Check.md]
44
- RepeatedConditional: Inline::C tests '$DEBUG' at least 7 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
45
- RepeatedConditional: Inline::C tests '$TESTING' at least 4 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
46
- RepeatedConditional: Inline::C tests '@@type_map.has_key? type' at least 3 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
47
- TooManyConstants: Inline has 6 constants [https://github.com/troessner/reek/blob/master/docs/Too-Many-Constants.md]
48
- TooManyInstanceVariables: Inline::C has at least 13 instance variables [https://github.com/troessner/reek/blob/master/docs/Too-Many-Instance-Variables.md]
49
- TooManyMethods: Inline::C has at least 25 methods [https://github.com/troessner/reek/blob/master/docs/Too-Many-Methods.md]
50
- TooManyStatements: File#self.write_with_backup has approx 6 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
51
- TooManyStatements: Inline#self.rootdir has approx 8 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
52
- TooManyStatements: Inline::C#build has approx 63 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
53
- TooManyStatements: Inline::C#generate has approx 35 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
54
- TooManyStatements: Inline::C#module_name has approx 7 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
55
- TooManyStatements: Inline::C#parse_signature has approx 16 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
56
- TooManyStatements: Module#inline has approx 12 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
57
- UncommunicativeMethodName: Inline::C#c has the name 'c' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
58
- UncommunicativeModuleName: Inline::C has the name 'C' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Module-Name.md]
59
- UncommunicativeVariableName: Inline::C#build has the variable name 'n' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
60
- UncommunicativeVariableName: Inline::C#build has the variable name 't' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
61
- UncommunicativeVariableName: Inline::C#module_name has the variable name 'm' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
62
- UncommunicativeVariableName: Inline::C#module_name has the variable name 'md5' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
63
- UncommunicativeVariableName: Inline::C#module_name has the variable name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
64
- UncommunicativeVariableName: Inline::C#parse_signature has the variable name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
65
- UtilityFunction: Inline::C#strip_comments doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
15
+ BooleanParameter: Inline::C#parse_signature has boolean parameter 'raw'
16
+ ClassVariable: Inline declares the class variable '@@directory'
17
+ ClassVariable: Inline declares the class variable '@@rootdir'
18
+ ClassVariable: Inline::C declares the class variable '@@type_map'
19
+ ControlParameter: Inline::C#parse_signature is controlled by argument 'raw'
20
+ DataClump: Inline::C takes parameters ['options', 'src'] to 5 methods
21
+ DuplicateMethodCall: Inline#self.rootdir calls 'env.nil?' 2 times
22
+ DuplicateMethodCall: Inline::C#build calls '$? != 0' 2 times
23
+ DuplicateMethodCall: Inline::C#build calls 'Inline.directory' 5 times
24
+ DuplicateMethodCall: Inline::C#build calls 'io.puts "#endif"' 2 times
25
+ DuplicateMethodCall: Inline::C#build calls 'io.puts "#ifdef __cplusplus"' 2 times
26
+ DuplicateMethodCall: Inline::C#build calls 'io.puts' 6 times
27
+ DuplicateMethodCall: Inline::C#build calls 'warn "Output:\n#{result}"' 2 times
28
+ DuplicateMethodCall: Inline::C#crap_for_windoze calls 'Config::CONFIG['libdir']' 2 times
29
+ DuplicateMethodCall: Inline::C#generate calls 'result.sub!(/\A\n/, '')' 2 times
30
+ DuplicateMethodCall: Inline::C#generate calls 'signature['args']' 2 times
31
+ DuplicateMethodCall: Inline::C#generate calls 'signature['args'].map' 2 times
32
+ DuplicateMethodCall: Inline::C#initialize calls 'stack.empty?' 2 times
33
+ DuplicateMethodCall: Module#inline calls 'Inline.const_get(lang)' 2 times
34
+ DuplicateMethodCall: Module#inline calls 'options[:testing]' 2 times
35
+ InstanceVariableAssumption: Inline::C assumes too much for instance variable '@module_name'
36
+ InstanceVariableAssumption: Inline::C assumes too much for instance variable '@so_name'
37
+ InstanceVariableAssumption: Inline::C assumes too much for instance variable '@types'
38
+ IrresponsibleModule: CompilationError has no descriptive comment
39
+ IrresponsibleModule: Dir has no descriptive comment
40
+ IrresponsibleModule: File has no descriptive comment
41
+ IrresponsibleModule: Module has no descriptive comment
42
+ NestedIterators: Inline::C#build contains iterators nested 2 deep
43
+ NilCheck: Inline#self.rootdir performs a nil-check
44
+ RepeatedConditional: Inline::C tests '$DEBUG' at least 7 times
45
+ RepeatedConditional: Inline::C tests '$TESTING' at least 4 times
46
+ RepeatedConditional: Inline::C tests '@@type_map.has_key? type' at least 3 times
47
+ TooManyConstants: Inline has 6 constants
48
+ TooManyInstanceVariables: Inline::C has at least 13 instance variables
49
+ TooManyMethods: Inline::C has at least 25 methods
50
+ TooManyStatements: File#self.write_with_backup has approx 6 statements
51
+ TooManyStatements: Inline#self.rootdir has approx 8 statements
52
+ TooManyStatements: Inline::C#build has approx 63 statements
53
+ TooManyStatements: Inline::C#generate has approx 35 statements
54
+ TooManyStatements: Inline::C#module_name has approx 7 statements
55
+ TooManyStatements: Inline::C#parse_signature has approx 16 statements
56
+ TooManyStatements: Module#inline has approx 12 statements
57
+ UncommunicativeMethodName: Inline::C#c has the name 'c'
58
+ UncommunicativeModuleName: Inline::C has the name 'C'
59
+ UncommunicativeVariableName: Inline::C#build has the variable name 'n'
60
+ UncommunicativeVariableName: Inline::C#build has the variable name 't'
61
+ UncommunicativeVariableName: Inline::C#module_name has the variable name 'm'
62
+ UncommunicativeVariableName: Inline::C#module_name has the variable name 'md5'
63
+ UncommunicativeVariableName: Inline::C#module_name has the variable name 'x'
64
+ UncommunicativeVariableName: Inline::C#parse_signature has the variable name 'x'
65
+ UtilityFunction: Inline::C#strip_comments doesn't depend on instance state (maybe move it to another class?)
66
66
  optparse.rb -- 126 warnings:
67
- Attribute: OptionParser#banner is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
68
- Attribute: OptionParser#default_argv is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
69
- Attribute: OptionParser#program_name is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
70
- Attribute: OptionParser#release is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
71
- Attribute: OptionParser#summary_indent is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
72
- Attribute: OptionParser#summary_width is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
73
- Attribute: OptionParser#version is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
74
- Attribute: OptionParser::ParseError#reason is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
75
- BooleanParameter: OptionParser#complete has boolean parameter 'icase' [https://github.com/troessner/reek/blob/master/docs/Boolean-Parameter.md]
76
- BooleanParameter: OptionParser::Completion#complete has boolean parameter 'icase' [https://github.com/troessner/reek/blob/master/docs/Boolean-Parameter.md]
77
- BooleanParameter: OptionParser::List#complete has boolean parameter 'icase' [https://github.com/troessner/reek/blob/master/docs/Boolean-Parameter.md]
78
- ControlParameter: OptionParser#summarize is controlled by argument 'blk' [https://github.com/troessner/reek/blob/master/docs/Control-Parameter.md]
79
- ControlParameter: OptionParser::Arguable#options= is controlled by argument 'opt' [https://github.com/troessner/reek/blob/master/docs/Control-Parameter.md]
80
- ControlParameter: OptionParser::ParseError#set_option is controlled by argument 'eq' [https://github.com/troessner/reek/blob/master/docs/Control-Parameter.md]
81
- DuplicateMethodCall: OptionParser#getopts calls 'result[opt] = false' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
82
- DuplicateMethodCall: OptionParser#make_switch calls 'default_style.guess(arg = a)' 4 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
83
- DuplicateMethodCall: OptionParser#make_switch calls 'long << (o = q.downcase)' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
84
- DuplicateMethodCall: OptionParser#make_switch calls 'notwice(NilClass, klass, 'type')' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
85
- DuplicateMethodCall: OptionParser#make_switch calls 'notwice(a ? Object : TrueClass, klass, 'type')' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
86
- DuplicateMethodCall: OptionParser#make_switch calls 'pattern.method(:convert)' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
87
- DuplicateMethodCall: OptionParser#make_switch calls 'pattern.method(:convert).to_proc' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
88
- DuplicateMethodCall: OptionParser#make_switch calls 'pattern.respond_to?(:convert)' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
89
- DuplicateMethodCall: OptionParser#make_switch calls 'q.downcase' 3 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
90
- DuplicateMethodCall: OptionParser#make_switch calls 'sdesc << "-#{q}"' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
91
- DuplicateMethodCall: OptionParser#make_switch calls 'search(:atype, FalseClass)' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
92
- DuplicateMethodCall: OptionParser#make_switch calls 'search(:atype, o)' 6 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
93
- DuplicateMethodCall: OptionParser#order calls 'argv[0]' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
94
- DuplicateMethodCall: OptionParser#parse calls 'argv[0]' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
95
- DuplicateMethodCall: OptionParser#parse_in_order calls '$!.set_option(arg, true)' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
96
- DuplicateMethodCall: OptionParser#parse_in_order calls 'cb.call(val)' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
97
- DuplicateMethodCall: OptionParser#parse_in_order calls 'raise $!.set_option(arg, true)' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
98
- DuplicateMethodCall: OptionParser#parse_in_order calls 'raise(*exc)' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
99
- DuplicateMethodCall: OptionParser#parse_in_order calls 'setter.call(sw.switch_name, val)' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
100
- DuplicateMethodCall: OptionParser#parse_in_order calls 'sw.block' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
101
- DuplicateMethodCall: OptionParser#parse_in_order calls 'sw.switch_name' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
102
- DuplicateMethodCall: OptionParser#permute calls 'argv[0]' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
103
- DuplicateMethodCall: OptionParser::Completion#complete calls 'candidates.size' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
104
- DuplicateMethodCall: OptionParser::Completion#complete calls 'k.id2name' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
105
- DuplicateMethodCall: OptionParser::Switch#parse_arg calls 's.length' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
106
- DuplicateMethodCall: OptionParser::Switch#summarize calls 'indent + l' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
107
- DuplicateMethodCall: OptionParser::Switch#summarize calls 'left.collect {|s| s.length}' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
108
- DuplicateMethodCall: OptionParser::Switch#summarize calls 'left.collect {|s| s.length}.max' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
109
- DuplicateMethodCall: OptionParser::Switch#summarize calls 'left.collect {|s| s.length}.max.to_i' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
110
- DuplicateMethodCall: OptionParser::Switch#summarize calls 'left.collect' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
111
- DuplicateMethodCall: OptionParser::Switch#summarize calls 'left.shift' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
112
- DuplicateMethodCall: OptionParser::Switch#summarize calls 'left[-1]' 3 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
113
- DuplicateMethodCall: OptionParser::Switch#summarize calls 's.length' 3 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
114
- FeatureEnvy: OptionParser#order refers to 'argv' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
115
- FeatureEnvy: OptionParser#parse refers to 'argv' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
116
- FeatureEnvy: OptionParser#permute refers to 'argv' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
117
- FeatureEnvy: OptionParser::Completion#complete refers to 'candidates' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
118
- FeatureEnvy: OptionParser::List#accept refers to 'pat' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
119
- FeatureEnvy: OptionParser::List#add_banner refers to 'opt' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
120
- FeatureEnvy: OptionParser::List#summarize refers to 'opt' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
121
- InstanceVariableAssumption: OptionParser assumes too much for instance variable '@release' [https://github.com/troessner/reek/blob/master/docs/Instance-Variable-Assumption.md]
122
- InstanceVariableAssumption: OptionParser assumes too much for instance variable '@version' [https://github.com/troessner/reek/blob/master/docs/Instance-Variable-Assumption.md]
123
- LongParameterList: OptionParser#complete has 4 parameters [https://github.com/troessner/reek/blob/master/docs/Long-Parameter-List.md]
124
- LongParameterList: OptionParser#summarize has 4 parameters [https://github.com/troessner/reek/blob/master/docs/Long-Parameter-List.md]
125
- LongParameterList: OptionParser::List#complete has 4 parameters [https://github.com/troessner/reek/blob/master/docs/Long-Parameter-List.md]
126
- LongParameterList: OptionParser::List#update has 5 parameters [https://github.com/troessner/reek/blob/master/docs/Long-Parameter-List.md]
127
- LongParameterList: OptionParser::Switch#initialize has 7 parameters [https://github.com/troessner/reek/blob/master/docs/Long-Parameter-List.md]
128
- LongParameterList: OptionParser::Switch#summarize has 5 parameters [https://github.com/troessner/reek/blob/master/docs/Long-Parameter-List.md]
129
- ManualDispatch: OptionParser#make_switch manually dispatches method call [https://github.com/troessner/reek/blob/master/docs/Manual-Dispatch.md]
130
- ManualDispatch: OptionParser::List#accept manually dispatches method call [https://github.com/troessner/reek/blob/master/docs/Manual-Dispatch.md]
131
- ManualDispatch: OptionParser::List#add_banner manually dispatches method call [https://github.com/troessner/reek/blob/master/docs/Manual-Dispatch.md]
132
- ManualDispatch: OptionParser::List#summarize manually dispatches method call [https://github.com/troessner/reek/blob/master/docs/Manual-Dispatch.md]
133
- ModuleInitialize: OptionParser::Arguable has initialize method [https://github.com/troessner/reek/blob/master/docs/Module-Initialize.md]
134
- NestedIterators: OptionParser#make_switch contains iterators nested 2 deep [https://github.com/troessner/reek/blob/master/docs/Nested-Iterators.md]
135
- NilCheck: OptionParser#make_switch performs a nil-check [https://github.com/troessner/reek/blob/master/docs/Nil-Check.md]
136
- NilCheck: OptionParser#self.inc performs a nil-check [https://github.com/troessner/reek/blob/master/docs/Nil-Check.md]
137
- RepeatedConditional: OptionParser tests 'a' at least 7 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
138
- RepeatedConditional: OptionParser tests 'argv.size == 1 and Array === argv[0]' at least 3 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
139
- RepeatedConditional: OptionParser tests 'default_pattern' at least 7 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
140
- RepeatedConditional: OptionParser tests 'not_style' at least 3 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
141
- RepeatedConditional: OptionParser tests 's' at least 7 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
142
- SubclassedFromCoreClass: OptionParser::CompletingHash inherits from core class 'Hash' [https://github.com/troessner/reek/blob/master/docs/Subclassed-From-Core-Class.md]
143
- SubclassedFromCoreClass: OptionParser::OptionMap inherits from core class 'Hash' [https://github.com/troessner/reek/blob/master/docs/Subclassed-From-Core-Class.md]
144
- TooManyConstants: OptionParser has 16 constants [https://github.com/troessner/reek/blob/master/docs/Too-Many-Constants.md]
145
- TooManyInstanceVariables: OptionParser has at least 6 instance variables [https://github.com/troessner/reek/blob/master/docs/Too-Many-Instance-Variables.md]
146
- TooManyInstanceVariables: OptionParser::Switch has at least 7 instance variables [https://github.com/troessner/reek/blob/master/docs/Too-Many-Instance-Variables.md]
147
- TooManyMethods: OptionParser has at least 42 methods [https://github.com/troessner/reek/blob/master/docs/Too-Many-Methods.md]
148
- TooManyStatements: OptionParser#complete has approx 6 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
149
- TooManyStatements: OptionParser#getopts has approx 18 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
150
- TooManyStatements: OptionParser#load has approx 6 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
151
- TooManyStatements: OptionParser#make_switch has approx 72 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
152
- TooManyStatements: OptionParser#parse_in_order has approx 35 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
153
- TooManyStatements: OptionParser#permute! has approx 6 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
154
- TooManyStatements: OptionParser::Arguable#options has approx 6 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
155
- TooManyStatements: OptionParser::Completion#complete has approx 23 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
156
- TooManyStatements: OptionParser::List#update has approx 10 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
157
- TooManyStatements: OptionParser::Switch#parse_arg has approx 11 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
158
- TooManyStatements: OptionParser::Switch#self.guess has approx 6 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
159
- TooManyStatements: OptionParser::Switch#summarize has approx 28 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
160
- TooManyStatements: OptionParser::Switch::PlacedArgument#parse has approx 6 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
161
- UncommunicativeParameterName: OptionParser::List#accept has the parameter name 't' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Parameter-Name.md]
162
- UncommunicativeParameterName: OptionParser::List#reject has the parameter name 't' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Parameter-Name.md]
163
- UncommunicativeParameterName: OptionParser::Switch#self.incompatible_argument_styles has the parameter name 't' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Parameter-Name.md]
164
- UncommunicativeVariableName: OptionParser has the variable name 'f' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
165
- UncommunicativeVariableName: OptionParser has the variable name 'k' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
166
- UncommunicativeVariableName: OptionParser has the variable name 'o' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
167
- UncommunicativeVariableName: OptionParser has the variable name 's' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
168
- UncommunicativeVariableName: OptionParser has the variable name 'v' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
169
- UncommunicativeVariableName: OptionParser#load has the variable name 's' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
170
- UncommunicativeVariableName: OptionParser#make_switch has the variable name 'a' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
171
- UncommunicativeVariableName: OptionParser#make_switch has the variable name 'c' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
172
- UncommunicativeVariableName: OptionParser#make_switch has the variable name 'n' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
173
- UncommunicativeVariableName: OptionParser#make_switch has the variable name 'o' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
174
- UncommunicativeVariableName: OptionParser#make_switch has the variable name 'q' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
175
- UncommunicativeVariableName: OptionParser#make_switch has the variable name 's' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
176
- UncommunicativeVariableName: OptionParser#make_switch has the variable name 'v' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
177
- UncommunicativeVariableName: OptionParser#search has the variable name 'k' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
178
- UncommunicativeVariableName: OptionParser#summarize has the variable name 'l' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
179
- UncommunicativeVariableName: OptionParser#ver has the variable name 'v' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
180
- UncommunicativeVariableName: OptionParser::Completion#complete has the variable name 'k' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
181
- UncommunicativeVariableName: OptionParser::Completion#complete has the variable name 'v' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
182
- UncommunicativeVariableName: OptionParser::List#update has the variable name 'o' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
183
- UncommunicativeVariableName: OptionParser::Switch#add_banner has the variable name 's' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
184
- UncommunicativeVariableName: OptionParser::Switch#parse_arg has the variable name 'm' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
185
- UncommunicativeVariableName: OptionParser::Switch#parse_arg has the variable name 's' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
186
- UncommunicativeVariableName: OptionParser::Switch#self.guess has the variable name 't' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
187
- UncommunicativeVariableName: OptionParser::Switch#summarize has the variable name 'l' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
188
- UncommunicativeVariableName: OptionParser::Switch#summarize has the variable name 'r' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
189
- UncommunicativeVariableName: OptionParser::Switch#summarize has the variable name 's' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
190
- UnusedParameters: OptionParser::Completion#convert has unused parameter 'opt' [https://github.com/troessner/reek/blob/master/docs/Unused-Parameters.md]
191
- UnusedParameters: OptionParser::Switch::NoArgument#parse has unused parameter 'argv' [https://github.com/troessner/reek/blob/master/docs/Unused-Parameters.md]
192
- UnusedParameters: OptionParser::Switch::OptionalArgument#parse has unused parameter 'argv' [https://github.com/troessner/reek/blob/master/docs/Unused-Parameters.md]
67
+ Attribute: OptionParser#banner is a writable attribute
68
+ Attribute: OptionParser#default_argv is a writable attribute
69
+ Attribute: OptionParser#program_name is a writable attribute
70
+ Attribute: OptionParser#release is a writable attribute
71
+ Attribute: OptionParser#summary_indent is a writable attribute
72
+ Attribute: OptionParser#summary_width is a writable attribute
73
+ Attribute: OptionParser#version is a writable attribute
74
+ Attribute: OptionParser::ParseError#reason is a writable attribute
75
+ BooleanParameter: OptionParser#complete has boolean parameter 'icase'
76
+ BooleanParameter: OptionParser::Completion#complete has boolean parameter 'icase'
77
+ BooleanParameter: OptionParser::List#complete has boolean parameter 'icase'
78
+ ControlParameter: OptionParser#summarize is controlled by argument 'blk'
79
+ ControlParameter: OptionParser::Arguable#options= is controlled by argument 'opt'
80
+ ControlParameter: OptionParser::ParseError#set_option is controlled by argument 'eq'
81
+ DuplicateMethodCall: OptionParser#getopts calls 'result[opt] = false' 2 times
82
+ DuplicateMethodCall: OptionParser#make_switch calls 'default_style.guess(arg = a)' 4 times
83
+ DuplicateMethodCall: OptionParser#make_switch calls 'long << (o = q.downcase)' 2 times
84
+ DuplicateMethodCall: OptionParser#make_switch calls 'notwice(NilClass, klass, 'type')' 2 times
85
+ DuplicateMethodCall: OptionParser#make_switch calls 'notwice(a ? Object : TrueClass, klass, 'type')' 2 times
86
+ DuplicateMethodCall: OptionParser#make_switch calls 'pattern.method(:convert)' 2 times
87
+ DuplicateMethodCall: OptionParser#make_switch calls 'pattern.method(:convert).to_proc' 2 times
88
+ DuplicateMethodCall: OptionParser#make_switch calls 'pattern.respond_to?(:convert)' 2 times
89
+ DuplicateMethodCall: OptionParser#make_switch calls 'q.downcase' 3 times
90
+ DuplicateMethodCall: OptionParser#make_switch calls 'sdesc << "-#{q}"' 2 times
91
+ DuplicateMethodCall: OptionParser#make_switch calls 'search(:atype, FalseClass)' 2 times
92
+ DuplicateMethodCall: OptionParser#make_switch calls 'search(:atype, o)' 6 times
93
+ DuplicateMethodCall: OptionParser#order calls 'argv[0]' 2 times
94
+ DuplicateMethodCall: OptionParser#parse calls 'argv[0]' 2 times
95
+ DuplicateMethodCall: OptionParser#parse_in_order calls '$!.set_option(arg, true)' 2 times
96
+ DuplicateMethodCall: OptionParser#parse_in_order calls 'cb.call(val)' 2 times
97
+ DuplicateMethodCall: OptionParser#parse_in_order calls 'raise $!.set_option(arg, true)' 2 times
98
+ DuplicateMethodCall: OptionParser#parse_in_order calls 'raise(*exc)' 2 times
99
+ DuplicateMethodCall: OptionParser#parse_in_order calls 'setter.call(sw.switch_name, val)' 2 times
100
+ DuplicateMethodCall: OptionParser#parse_in_order calls 'sw.block' 2 times
101
+ DuplicateMethodCall: OptionParser#parse_in_order calls 'sw.switch_name' 2 times
102
+ DuplicateMethodCall: OptionParser#permute calls 'argv[0]' 2 times
103
+ DuplicateMethodCall: OptionParser::Completion#complete calls 'candidates.size' 2 times
104
+ DuplicateMethodCall: OptionParser::Completion#complete calls 'k.id2name' 2 times
105
+ DuplicateMethodCall: OptionParser::Switch#parse_arg calls 's.length' 2 times
106
+ DuplicateMethodCall: OptionParser::Switch#summarize calls 'indent + l' 2 times
107
+ DuplicateMethodCall: OptionParser::Switch#summarize calls 'left.collect {|s| s.length}' 2 times
108
+ DuplicateMethodCall: OptionParser::Switch#summarize calls 'left.collect {|s| s.length}.max' 2 times
109
+ DuplicateMethodCall: OptionParser::Switch#summarize calls 'left.collect {|s| s.length}.max.to_i' 2 times
110
+ DuplicateMethodCall: OptionParser::Switch#summarize calls 'left.collect' 2 times
111
+ DuplicateMethodCall: OptionParser::Switch#summarize calls 'left.shift' 2 times
112
+ DuplicateMethodCall: OptionParser::Switch#summarize calls 'left[-1]' 3 times
113
+ DuplicateMethodCall: OptionParser::Switch#summarize calls 's.length' 3 times
114
+ FeatureEnvy: OptionParser#order refers to 'argv' more than self (maybe move it to another class?)
115
+ FeatureEnvy: OptionParser#parse refers to 'argv' more than self (maybe move it to another class?)
116
+ FeatureEnvy: OptionParser#permute refers to 'argv' more than self (maybe move it to another class?)
117
+ FeatureEnvy: OptionParser::Completion#complete refers to 'candidates' more than self (maybe move it to another class?)
118
+ FeatureEnvy: OptionParser::List#accept refers to 'pat' more than self (maybe move it to another class?)
119
+ FeatureEnvy: OptionParser::List#add_banner refers to 'opt' more than self (maybe move it to another class?)
120
+ FeatureEnvy: OptionParser::List#summarize refers to 'opt' more than self (maybe move it to another class?)
121
+ InstanceVariableAssumption: OptionParser assumes too much for instance variable '@release'
122
+ InstanceVariableAssumption: OptionParser assumes too much for instance variable '@version'
123
+ LongParameterList: OptionParser#complete has 4 parameters
124
+ LongParameterList: OptionParser#summarize has 4 parameters
125
+ LongParameterList: OptionParser::List#complete has 4 parameters
126
+ LongParameterList: OptionParser::List#update has 5 parameters
127
+ LongParameterList: OptionParser::Switch#initialize has 7 parameters
128
+ LongParameterList: OptionParser::Switch#summarize has 5 parameters
129
+ ManualDispatch: OptionParser#make_switch manually dispatches method call
130
+ ManualDispatch: OptionParser::List#accept manually dispatches method call
131
+ ManualDispatch: OptionParser::List#add_banner manually dispatches method call
132
+ ManualDispatch: OptionParser::List#summarize manually dispatches method call
133
+ ModuleInitialize: OptionParser::Arguable has initialize method
134
+ NestedIterators: OptionParser#make_switch contains iterators nested 2 deep
135
+ NilCheck: OptionParser#make_switch performs a nil-check
136
+ NilCheck: OptionParser#self.inc performs a nil-check
137
+ RepeatedConditional: OptionParser tests 'a' at least 7 times
138
+ RepeatedConditional: OptionParser tests 'argv.size == 1 and Array === argv[0]' at least 3 times
139
+ RepeatedConditional: OptionParser tests 'default_pattern' at least 7 times
140
+ RepeatedConditional: OptionParser tests 'not_style' at least 3 times
141
+ RepeatedConditional: OptionParser tests 's' at least 7 times
142
+ SubclassedFromCoreClass: OptionParser::CompletingHash inherits from core class 'Hash'
143
+ SubclassedFromCoreClass: OptionParser::OptionMap inherits from core class 'Hash'
144
+ TooManyConstants: OptionParser has 16 constants
145
+ TooManyInstanceVariables: OptionParser has at least 6 instance variables
146
+ TooManyInstanceVariables: OptionParser::Switch has at least 7 instance variables
147
+ TooManyMethods: OptionParser has at least 42 methods
148
+ TooManyStatements: OptionParser#complete has approx 6 statements
149
+ TooManyStatements: OptionParser#getopts has approx 18 statements
150
+ TooManyStatements: OptionParser#load has approx 6 statements
151
+ TooManyStatements: OptionParser#make_switch has approx 72 statements
152
+ TooManyStatements: OptionParser#parse_in_order has approx 35 statements
153
+ TooManyStatements: OptionParser#permute! has approx 6 statements
154
+ TooManyStatements: OptionParser::Arguable#options has approx 6 statements
155
+ TooManyStatements: OptionParser::Completion#complete has approx 23 statements
156
+ TooManyStatements: OptionParser::List#update has approx 10 statements
157
+ TooManyStatements: OptionParser::Switch#parse_arg has approx 11 statements
158
+ TooManyStatements: OptionParser::Switch#self.guess has approx 6 statements
159
+ TooManyStatements: OptionParser::Switch#summarize has approx 28 statements
160
+ TooManyStatements: OptionParser::Switch::PlacedArgument#parse has approx 6 statements
161
+ UncommunicativeParameterName: OptionParser::List#accept has the parameter name 't'
162
+ UncommunicativeParameterName: OptionParser::List#reject has the parameter name 't'
163
+ UncommunicativeParameterName: OptionParser::Switch#self.incompatible_argument_styles has the parameter name 't'
164
+ UncommunicativeVariableName: OptionParser has the variable name 'f'
165
+ UncommunicativeVariableName: OptionParser has the variable name 'k'
166
+ UncommunicativeVariableName: OptionParser has the variable name 'o'
167
+ UncommunicativeVariableName: OptionParser has the variable name 's'
168
+ UncommunicativeVariableName: OptionParser has the variable name 'v'
169
+ UncommunicativeVariableName: OptionParser#load has the variable name 's'
170
+ UncommunicativeVariableName: OptionParser#make_switch has the variable name 'a'
171
+ UncommunicativeVariableName: OptionParser#make_switch has the variable name 'c'
172
+ UncommunicativeVariableName: OptionParser#make_switch has the variable name 'n'
173
+ UncommunicativeVariableName: OptionParser#make_switch has the variable name 'o'
174
+ UncommunicativeVariableName: OptionParser#make_switch has the variable name 'q'
175
+ UncommunicativeVariableName: OptionParser#make_switch has the variable name 's'
176
+ UncommunicativeVariableName: OptionParser#make_switch has the variable name 'v'
177
+ UncommunicativeVariableName: OptionParser#search has the variable name 'k'
178
+ UncommunicativeVariableName: OptionParser#summarize has the variable name 'l'
179
+ UncommunicativeVariableName: OptionParser#ver has the variable name 'v'
180
+ UncommunicativeVariableName: OptionParser::Completion#complete has the variable name 'k'
181
+ UncommunicativeVariableName: OptionParser::Completion#complete has the variable name 'v'
182
+ UncommunicativeVariableName: OptionParser::List#update has the variable name 'o'
183
+ UncommunicativeVariableName: OptionParser::Switch#add_banner has the variable name 's'
184
+ UncommunicativeVariableName: OptionParser::Switch#parse_arg has the variable name 'm'
185
+ UncommunicativeVariableName: OptionParser::Switch#parse_arg has the variable name 's'
186
+ UncommunicativeVariableName: OptionParser::Switch#self.guess has the variable name 't'
187
+ UncommunicativeVariableName: OptionParser::Switch#summarize has the variable name 'l'
188
+ UncommunicativeVariableName: OptionParser::Switch#summarize has the variable name 'r'
189
+ UncommunicativeVariableName: OptionParser::Switch#summarize has the variable name 's'
190
+ UnusedParameters: OptionParser::Completion#convert has unused parameter 'opt'
191
+ UnusedParameters: OptionParser::Switch::NoArgument#parse has unused parameter 'argv'
192
+ UnusedParameters: OptionParser::Switch::OptionalArgument#parse has unused parameter 'argv'
193
193
  redcloth.rb -- 110 warnings:
194
- Attribute: RedCloth#filter_html is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
195
- Attribute: RedCloth#filter_styles is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
196
- Attribute: RedCloth#hard_breaks is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
197
- Attribute: RedCloth#lite_mode is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
198
- Attribute: RedCloth#no_span_caps is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
199
- Attribute: RedCloth#rules is a writable attribute [https://github.com/troessner/reek/blob/master/docs/Attribute.md]
200
- BooleanParameter: RedCloth#blocks has boolean parameter 'deep_code' [https://github.com/troessner/reek/blob/master/docs/Boolean-Parameter.md]
201
- ControlParameter: RedCloth#blocks is controlled by argument 'deep_code' [https://github.com/troessner/reek/blob/master/docs/Control-Parameter.md]
202
- ControlParameter: RedCloth#htmlesc is controlled by argument 'mode' [https://github.com/troessner/reek/blob/master/docs/Control-Parameter.md]
203
- ControlParameter: RedCloth#lT is controlled by argument 'text' [https://github.com/troessner/reek/blob/master/docs/Control-Parameter.md]
204
- ControlParameter: RedCloth#pba is controlled by argument 'element' [https://github.com/troessner/reek/blob/master/docs/Control-Parameter.md]
205
- DataClump: RedCloth takes parameters ['atts', 'cite', 'content', 'tag'] to 3 methods [https://github.com/troessner/reek/blob/master/docs/Data-Clump.md]
206
- DuplicateMethodCall: RedCloth#block_textile_lists calls 'depth.last' 5 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
207
- DuplicateMethodCall: RedCloth#block_textile_lists calls 'depth.last.length' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
208
- DuplicateMethodCall: RedCloth#block_textile_lists calls 'depth[i]' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
209
- DuplicateMethodCall: RedCloth#block_textile_lists calls 'line_id - 1' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
210
- DuplicateMethodCall: RedCloth#block_textile_lists calls 'lines[line_id - 1]' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
211
- DuplicateMethodCall: RedCloth#block_textile_lists calls 'tl.length' 3 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
212
- DuplicateMethodCall: RedCloth#clean_html calls 'tags[tag]' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
213
- DuplicateMethodCall: RedCloth#pba calls '$1.length' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
214
- DuplicateMethodCall: RedCloth#rip_offtags calls '@pre_list.last << line' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
215
- DuplicateMethodCall: RedCloth#rip_offtags calls '@pre_list.last' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
216
- DuplicateMethodCall: RedCloth#rip_offtags calls 'codepre - used_offtags.length > 0' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
217
- DuplicateMethodCall: RedCloth#rip_offtags calls 'codepre - used_offtags.length' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
218
- DuplicateMethodCall: RedCloth#rip_offtags calls 'codepre.zero?' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
219
- DuplicateMethodCall: RedCloth#rip_offtags calls 'htmlesc( line, :NoQuotes )' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
220
- DuplicateMethodCall: RedCloth#rip_offtags calls 'used_offtags.length' 2 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
221
- DuplicateMethodCall: RedCloth#rip_offtags calls 'used_offtags['notextile']' 3 times [https://github.com/troessner/reek/blob/master/docs/Duplicate-Method-Call.md]
222
- FeatureEnvy: RedCloth#block_markdown_atx refers to 'text' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
223
- FeatureEnvy: RedCloth#block_markdown_setext refers to 'text' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
224
- FeatureEnvy: RedCloth#block_textile_lists refers to 'depth' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
225
- FeatureEnvy: RedCloth#blocks refers to 'blk' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
226
- FeatureEnvy: RedCloth#clean_white_space refers to 'text' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
227
- FeatureEnvy: RedCloth#pba refers to 'text' more than self (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Feature-Envy.md]
228
- InstanceVariableAssumption: RedCloth assumes too much for instance variable '@lite_mode' [https://github.com/troessner/reek/blob/master/docs/Instance-Variable-Assumption.md]
229
- InstanceVariableAssumption: RedCloth assumes too much for instance variable '@pre_list' [https://github.com/troessner/reek/blob/master/docs/Instance-Variable-Assumption.md]
230
- InstanceVariableAssumption: RedCloth assumes too much for instance variable '@rules' [https://github.com/troessner/reek/blob/master/docs/Instance-Variable-Assumption.md]
231
- InstanceVariableAssumption: RedCloth assumes too much for instance variable '@shelf' [https://github.com/troessner/reek/blob/master/docs/Instance-Variable-Assumption.md]
232
- InstanceVariableAssumption: RedCloth assumes too much for instance variable '@urlrefs' [https://github.com/troessner/reek/blob/master/docs/Instance-Variable-Assumption.md]
233
- LongParameterList: RedCloth#textile_bq has 4 parameters [https://github.com/troessner/reek/blob/master/docs/Long-Parameter-List.md]
234
- LongParameterList: RedCloth#textile_fn_ has 5 parameters [https://github.com/troessner/reek/blob/master/docs/Long-Parameter-List.md]
235
- LongParameterList: RedCloth#textile_p has 4 parameters [https://github.com/troessner/reek/blob/master/docs/Long-Parameter-List.md]
236
- ManualDispatch: RedCloth#block_textile_prefix manually dispatches method call [https://github.com/troessner/reek/blob/master/docs/Manual-Dispatch.md]
237
- NestedIterators: RedCloth#block_textile_lists contains iterators nested 3 deep [https://github.com/troessner/reek/blob/master/docs/Nested-Iterators.md]
238
- NestedIterators: RedCloth#block_textile_table contains iterators nested 2 deep [https://github.com/troessner/reek/blob/master/docs/Nested-Iterators.md]
239
- NestedIterators: RedCloth#block_textile_table contains iterators nested 3 deep [https://github.com/troessner/reek/blob/master/docs/Nested-Iterators.md]
240
- NestedIterators: RedCloth#blocks contains iterators nested 2 deep [https://github.com/troessner/reek/blob/master/docs/Nested-Iterators.md]
241
- NestedIterators: RedCloth#clean_html contains iterators nested 2 deep [https://github.com/troessner/reek/blob/master/docs/Nested-Iterators.md]
242
- NestedIterators: RedCloth#inline contains iterators nested 2 deep [https://github.com/troessner/reek/blob/master/docs/Nested-Iterators.md]
243
- NestedIterators: RedCloth#inline_textile_span contains iterators nested 2 deep [https://github.com/troessner/reek/blob/master/docs/Nested-Iterators.md]
244
- RepeatedConditional: RedCloth tests 'atts' at least 6 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
245
- RepeatedConditional: RedCloth tests 'codepre.zero?' at least 3 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
246
- RepeatedConditional: RedCloth tests 'href' at least 3 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
247
- RepeatedConditional: RedCloth tests 'title' at least 4 times [https://github.com/troessner/reek/blob/master/docs/Repeated-Conditional.md]
248
- SubclassedFromCoreClass: RedCloth inherits from core class 'String' [https://github.com/troessner/reek/blob/master/docs/Subclassed-From-Core-Class.md]
249
- TooManyConstants: RedCloth has 45 constants [https://github.com/troessner/reek/blob/master/docs/Too-Many-Constants.md]
250
- TooManyMethods: RedCloth has at least 44 methods [https://github.com/troessner/reek/blob/master/docs/Too-Many-Methods.md]
251
- TooManyStatements: RedCloth#block_markdown_bq has approx 6 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
252
- TooManyStatements: RedCloth#block_textile_lists has approx 21 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
253
- TooManyStatements: RedCloth#block_textile_table has approx 19 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
254
- TooManyStatements: RedCloth#blocks has approx 19 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
255
- TooManyStatements: RedCloth#clean_html has approx 15 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
256
- TooManyStatements: RedCloth#clean_white_space has approx 7 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
257
- TooManyStatements: RedCloth#glyphs_textile has approx 10 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
258
- TooManyStatements: RedCloth#inline_markdown_link has approx 6 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
259
- TooManyStatements: RedCloth#inline_markdown_reflink has approx 8 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
260
- TooManyStatements: RedCloth#inline_textile_image has approx 17 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
261
- TooManyStatements: RedCloth#inline_textile_link has approx 9 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
262
- TooManyStatements: RedCloth#inline_textile_span has approx 9 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
263
- TooManyStatements: RedCloth#pba has approx 21 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
264
- TooManyStatements: RedCloth#rip_offtags has approx 18 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
265
- TooManyStatements: RedCloth#to_html has approx 26 statements [https://github.com/troessner/reek/blob/master/docs/Too-Many-Statements.md]
266
- UncommunicativeMethodName: RedCloth#lT has the name 'lT' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
267
- UncommunicativeParameterName: RedCloth#textile_popup_help has the parameter name 'windowH' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Parameter-Name.md]
268
- UncommunicativeParameterName: RedCloth#textile_popup_help has the parameter name 'windowW' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Parameter-Name.md]
269
- UncommunicativeVariableName: RedCloth has the variable name 'a' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
270
- UncommunicativeVariableName: RedCloth has the variable name 'b' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
271
- UncommunicativeVariableName: RedCloth#block_textile_lists has the variable name 'i' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
272
- UncommunicativeVariableName: RedCloth#block_textile_lists has the variable name 'v' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
273
- UncommunicativeVariableName: RedCloth#block_textile_table has the variable name 'x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
274
- UncommunicativeVariableName: RedCloth#clean_html has the variable name 'q' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
275
- UncommunicativeVariableName: RedCloth#clean_html has the variable name 'q2' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
276
- UncommunicativeVariableName: RedCloth#initialize has the variable name 'r' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
277
- UncommunicativeVariableName: RedCloth#inline_markdown_link has the variable name 'm' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
278
- UncommunicativeVariableName: RedCloth#inline_markdown_reflink has the variable name 'm' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
279
- UncommunicativeVariableName: RedCloth#inline_textile_code has the variable name 'm' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
280
- UncommunicativeVariableName: RedCloth#inline_textile_image has the variable name 'href_a1' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
281
- UncommunicativeVariableName: RedCloth#inline_textile_image has the variable name 'href_a2' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
282
- UncommunicativeVariableName: RedCloth#inline_textile_image has the variable name 'm' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
283
- UncommunicativeVariableName: RedCloth#inline_textile_link has the variable name 'm' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
284
- UncommunicativeVariableName: RedCloth#inline_textile_span has the variable name 'm' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
285
- UncommunicativeVariableName: RedCloth#refs_markdown has the variable name 'm' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
286
- UncommunicativeVariableName: RedCloth#refs_textile has the variable name 'm' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
287
- UncommunicativeVariableName: RedCloth#retrieve has the variable name 'i' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
288
- UncommunicativeVariableName: RedCloth#retrieve has the variable name 'r' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
289
- UnusedParameters: RedCloth#block_markdown_lists has unused parameter 'text' [https://github.com/troessner/reek/blob/master/docs/Unused-Parameters.md]
290
- UnusedParameters: RedCloth#textile_bq has unused parameter 'tag' [https://github.com/troessner/reek/blob/master/docs/Unused-Parameters.md]
291
- UnusedParameters: RedCloth#textile_fn_ has unused parameter 'cite' [https://github.com/troessner/reek/blob/master/docs/Unused-Parameters.md]
292
- UnusedParameters: RedCloth#textile_fn_ has unused parameter 'tag' [https://github.com/troessner/reek/blob/master/docs/Unused-Parameters.md]
293
- UnusedParameters: RedCloth#textile_p has unused parameter 'cite' [https://github.com/troessner/reek/blob/master/docs/Unused-Parameters.md]
294
- UtilityFunction: RedCloth#block_markdown_rule doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
295
- UtilityFunction: RedCloth#clean_html doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
296
- UtilityFunction: RedCloth#flush_left doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
297
- UtilityFunction: RedCloth#footnote_ref doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
298
- UtilityFunction: RedCloth#h_align doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
299
- UtilityFunction: RedCloth#htmlesc doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
300
- UtilityFunction: RedCloth#incoming_entities doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
301
- UtilityFunction: RedCloth#lT doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
302
- UtilityFunction: RedCloth#no_textile doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
303
- UtilityFunction: RedCloth#v_align doesn't depend on instance state (maybe move it to another class?) [https://github.com/troessner/reek/blob/master/docs/Utility-Function.md]
194
+ Attribute: RedCloth#filter_html is a writable attribute
195
+ Attribute: RedCloth#filter_styles is a writable attribute
196
+ Attribute: RedCloth#hard_breaks is a writable attribute
197
+ Attribute: RedCloth#lite_mode is a writable attribute
198
+ Attribute: RedCloth#no_span_caps is a writable attribute
199
+ Attribute: RedCloth#rules is a writable attribute
200
+ BooleanParameter: RedCloth#blocks has boolean parameter 'deep_code'
201
+ ControlParameter: RedCloth#blocks is controlled by argument 'deep_code'
202
+ ControlParameter: RedCloth#htmlesc is controlled by argument 'mode'
203
+ ControlParameter: RedCloth#lT is controlled by argument 'text'
204
+ ControlParameter: RedCloth#pba is controlled by argument 'element'
205
+ DataClump: RedCloth takes parameters ['atts', 'cite', 'content', 'tag'] to 3 methods
206
+ DuplicateMethodCall: RedCloth#block_textile_lists calls 'depth.last' 5 times
207
+ DuplicateMethodCall: RedCloth#block_textile_lists calls 'depth.last.length' 2 times
208
+ DuplicateMethodCall: RedCloth#block_textile_lists calls 'depth[i]' 2 times
209
+ DuplicateMethodCall: RedCloth#block_textile_lists calls 'line_id - 1' 2 times
210
+ DuplicateMethodCall: RedCloth#block_textile_lists calls 'lines[line_id - 1]' 2 times
211
+ DuplicateMethodCall: RedCloth#block_textile_lists calls 'tl.length' 3 times
212
+ DuplicateMethodCall: RedCloth#clean_html calls 'tags[tag]' 2 times
213
+ DuplicateMethodCall: RedCloth#pba calls '$1.length' 2 times
214
+ DuplicateMethodCall: RedCloth#rip_offtags calls '@pre_list.last << line' 2 times
215
+ DuplicateMethodCall: RedCloth#rip_offtags calls '@pre_list.last' 2 times
216
+ DuplicateMethodCall: RedCloth#rip_offtags calls 'codepre - used_offtags.length > 0' 2 times
217
+ DuplicateMethodCall: RedCloth#rip_offtags calls 'codepre - used_offtags.length' 2 times
218
+ DuplicateMethodCall: RedCloth#rip_offtags calls 'codepre.zero?' 2 times
219
+ DuplicateMethodCall: RedCloth#rip_offtags calls 'htmlesc( line, :NoQuotes )' 2 times
220
+ DuplicateMethodCall: RedCloth#rip_offtags calls 'used_offtags.length' 2 times
221
+ DuplicateMethodCall: RedCloth#rip_offtags calls 'used_offtags['notextile']' 3 times
222
+ FeatureEnvy: RedCloth#block_markdown_atx refers to 'text' more than self (maybe move it to another class?)
223
+ FeatureEnvy: RedCloth#block_markdown_setext refers to 'text' more than self (maybe move it to another class?)
224
+ FeatureEnvy: RedCloth#block_textile_lists refers to 'depth' more than self (maybe move it to another class?)
225
+ FeatureEnvy: RedCloth#blocks refers to 'blk' more than self (maybe move it to another class?)
226
+ FeatureEnvy: RedCloth#clean_white_space refers to 'text' more than self (maybe move it to another class?)
227
+ FeatureEnvy: RedCloth#pba refers to 'text' more than self (maybe move it to another class?)
228
+ InstanceVariableAssumption: RedCloth assumes too much for instance variable '@lite_mode'
229
+ InstanceVariableAssumption: RedCloth assumes too much for instance variable '@pre_list'
230
+ InstanceVariableAssumption: RedCloth assumes too much for instance variable '@rules'
231
+ InstanceVariableAssumption: RedCloth assumes too much for instance variable '@shelf'
232
+ InstanceVariableAssumption: RedCloth assumes too much for instance variable '@urlrefs'
233
+ LongParameterList: RedCloth#textile_bq has 4 parameters
234
+ LongParameterList: RedCloth#textile_fn_ has 5 parameters
235
+ LongParameterList: RedCloth#textile_p has 4 parameters
236
+ ManualDispatch: RedCloth#block_textile_prefix manually dispatches method call
237
+ NestedIterators: RedCloth#block_textile_lists contains iterators nested 3 deep
238
+ NestedIterators: RedCloth#block_textile_table contains iterators nested 2 deep
239
+ NestedIterators: RedCloth#block_textile_table contains iterators nested 3 deep
240
+ NestedIterators: RedCloth#blocks contains iterators nested 2 deep
241
+ NestedIterators: RedCloth#clean_html contains iterators nested 2 deep
242
+ NestedIterators: RedCloth#inline contains iterators nested 2 deep
243
+ NestedIterators: RedCloth#inline_textile_span contains iterators nested 2 deep
244
+ RepeatedConditional: RedCloth tests 'atts' at least 6 times
245
+ RepeatedConditional: RedCloth tests 'codepre.zero?' at least 3 times
246
+ RepeatedConditional: RedCloth tests 'href' at least 3 times
247
+ RepeatedConditional: RedCloth tests 'title' at least 4 times
248
+ SubclassedFromCoreClass: RedCloth inherits from core class 'String'
249
+ TooManyConstants: RedCloth has 45 constants
250
+ TooManyMethods: RedCloth has at least 44 methods
251
+ TooManyStatements: RedCloth#block_markdown_bq has approx 6 statements
252
+ TooManyStatements: RedCloth#block_textile_lists has approx 21 statements
253
+ TooManyStatements: RedCloth#block_textile_table has approx 19 statements
254
+ TooManyStatements: RedCloth#blocks has approx 19 statements
255
+ TooManyStatements: RedCloth#clean_html has approx 15 statements
256
+ TooManyStatements: RedCloth#clean_white_space has approx 7 statements
257
+ TooManyStatements: RedCloth#glyphs_textile has approx 10 statements
258
+ TooManyStatements: RedCloth#inline_markdown_link has approx 6 statements
259
+ TooManyStatements: RedCloth#inline_markdown_reflink has approx 8 statements
260
+ TooManyStatements: RedCloth#inline_textile_image has approx 17 statements
261
+ TooManyStatements: RedCloth#inline_textile_link has approx 9 statements
262
+ TooManyStatements: RedCloth#inline_textile_span has approx 9 statements
263
+ TooManyStatements: RedCloth#pba has approx 21 statements
264
+ TooManyStatements: RedCloth#rip_offtags has approx 18 statements
265
+ TooManyStatements: RedCloth#to_html has approx 26 statements
266
+ UncommunicativeMethodName: RedCloth#lT has the name 'lT'
267
+ UncommunicativeParameterName: RedCloth#textile_popup_help has the parameter name 'windowH'
268
+ UncommunicativeParameterName: RedCloth#textile_popup_help has the parameter name 'windowW'
269
+ UncommunicativeVariableName: RedCloth has the variable name 'a'
270
+ UncommunicativeVariableName: RedCloth has the variable name 'b'
271
+ UncommunicativeVariableName: RedCloth#block_textile_lists has the variable name 'i'
272
+ UncommunicativeVariableName: RedCloth#block_textile_lists has the variable name 'v'
273
+ UncommunicativeVariableName: RedCloth#block_textile_table has the variable name 'x'
274
+ UncommunicativeVariableName: RedCloth#clean_html has the variable name 'q'
275
+ UncommunicativeVariableName: RedCloth#clean_html has the variable name 'q2'
276
+ UncommunicativeVariableName: RedCloth#initialize has the variable name 'r'
277
+ UncommunicativeVariableName: RedCloth#inline_markdown_link has the variable name 'm'
278
+ UncommunicativeVariableName: RedCloth#inline_markdown_reflink has the variable name 'm'
279
+ UncommunicativeVariableName: RedCloth#inline_textile_code has the variable name 'm'
280
+ UncommunicativeVariableName: RedCloth#inline_textile_image has the variable name 'href_a1'
281
+ UncommunicativeVariableName: RedCloth#inline_textile_image has the variable name 'href_a2'
282
+ UncommunicativeVariableName: RedCloth#inline_textile_image has the variable name 'm'
283
+ UncommunicativeVariableName: RedCloth#inline_textile_link has the variable name 'm'
284
+ UncommunicativeVariableName: RedCloth#inline_textile_span has the variable name 'm'
285
+ UncommunicativeVariableName: RedCloth#refs_markdown has the variable name 'm'
286
+ UncommunicativeVariableName: RedCloth#refs_textile has the variable name 'm'
287
+ UncommunicativeVariableName: RedCloth#retrieve has the variable name 'i'
288
+ UncommunicativeVariableName: RedCloth#retrieve has the variable name 'r'
289
+ UnusedParameters: RedCloth#block_markdown_lists has unused parameter 'text'
290
+ UnusedParameters: RedCloth#textile_bq has unused parameter 'tag'
291
+ UnusedParameters: RedCloth#textile_fn_ has unused parameter 'cite'
292
+ UnusedParameters: RedCloth#textile_fn_ has unused parameter 'tag'
293
+ UnusedParameters: RedCloth#textile_p has unused parameter 'cite'
294
+ UtilityFunction: RedCloth#block_markdown_rule doesn't depend on instance state (maybe move it to another class?)
295
+ UtilityFunction: RedCloth#clean_html doesn't depend on instance state (maybe move it to another class?)
296
+ UtilityFunction: RedCloth#flush_left doesn't depend on instance state (maybe move it to another class?)
297
+ UtilityFunction: RedCloth#footnote_ref doesn't depend on instance state (maybe move it to another class?)
298
+ UtilityFunction: RedCloth#h_align doesn't depend on instance state (maybe move it to another class?)
299
+ UtilityFunction: RedCloth#htmlesc doesn't depend on instance state (maybe move it to another class?)
300
+ UtilityFunction: RedCloth#incoming_entities doesn't depend on instance state (maybe move it to another class?)
301
+ UtilityFunction: RedCloth#lT doesn't depend on instance state (maybe move it to another class?)
302
+ UtilityFunction: RedCloth#no_textile doesn't depend on instance state (maybe move it to another class?)
303
+ UtilityFunction: RedCloth#v_align doesn't depend on instance state (maybe move it to another class?)
304
304
  287 total warnings
305
305
  """