packwerk 2.2.0 → 2.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (187) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +29 -20
  3. data/.github/workflows/cla.yml +22 -0
  4. data/.rubocop.yml +48 -19
  5. data/Gemfile +7 -2
  6. data/Gemfile.lock +201 -175
  7. data/README.md +1 -1
  8. data/RESOLVING_VIOLATIONS.md +81 -0
  9. data/Rakefile +1 -1
  10. data/USAGE.md +14 -5
  11. data/bin/m +1 -1
  12. data/bin/rake +1 -1
  13. data/bin/rubocop +1 -1
  14. data/bin/srb +1 -1
  15. data/bin/tapioca +1 -1
  16. data/gemfiles/Gemfile-rails-6-0 +1 -1
  17. data/gemfiles/Gemfile-rails-6-1 +22 -0
  18. data/lib/packwerk/application_validator.rb +7 -6
  19. data/lib/packwerk/association_inspector.rb +17 -15
  20. data/lib/packwerk/cache.rb +36 -29
  21. data/lib/packwerk/cli.rb +5 -6
  22. data/lib/packwerk/const_node_inspector.rb +8 -7
  23. data/lib/packwerk/constant_name_inspector.rb +2 -2
  24. data/lib/packwerk/deprecated_references.rb +34 -19
  25. data/lib/packwerk/file_processor.rb +14 -14
  26. data/lib/packwerk/files_for_processing.rb +27 -31
  27. data/lib/packwerk/formatters/offenses_formatter.rb +3 -3
  28. data/lib/packwerk/formatters/progress_formatter.rb +2 -2
  29. data/lib/packwerk/node.rb +1 -294
  30. data/lib/packwerk/node_helpers.rb +335 -0
  31. data/lib/packwerk/node_processor.rb +6 -5
  32. data/lib/packwerk/node_processor_factory.rb +3 -3
  33. data/lib/packwerk/node_visitor.rb +1 -1
  34. data/lib/packwerk/offense_collection.rb +6 -3
  35. data/lib/packwerk/offenses_formatter.rb +2 -2
  36. data/lib/packwerk/package.rb +3 -0
  37. data/lib/packwerk/package_set.rb +2 -0
  38. data/lib/packwerk/parse_run.rb +15 -13
  39. data/lib/packwerk/parsed_constant_definitions.rb +23 -20
  40. data/lib/packwerk/parsers/erb.rb +3 -3
  41. data/lib/packwerk/reference_checking/checkers/checker.rb +16 -3
  42. data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +16 -0
  43. data/lib/packwerk/reference_checking/checkers/privacy_checker.rb +18 -0
  44. data/lib/packwerk/reference_checking/reference_checker.rb +3 -1
  45. data/lib/packwerk/reference_extractor.rb +51 -48
  46. data/lib/packwerk/reference_offense.rb +3 -27
  47. data/lib/packwerk/run_context.rb +3 -3
  48. data/lib/packwerk/spring_command.rb +1 -1
  49. data/lib/packwerk/version.rb +1 -1
  50. data/lib/packwerk.rb +1 -0
  51. data/packwerk.gemspec +4 -12
  52. data/sorbet/rbi/gems/actioncable@7.0.3.1.rbi +2754 -0
  53. data/sorbet/rbi/gems/actionmailbox@7.0.3.1.rbi +1496 -0
  54. data/sorbet/rbi/gems/actionmailer@7.0.3.1.rbi +2362 -0
  55. data/sorbet/rbi/gems/actionpack@7.0.3.1.rbi +19397 -0
  56. data/sorbet/rbi/gems/actiontext@7.0.3.1.rbi +1569 -0
  57. data/sorbet/rbi/gems/actionview@7.0.3.1.rbi +14907 -0
  58. data/sorbet/rbi/gems/activejob@7.0.3.1.rbi +2553 -0
  59. data/sorbet/rbi/gems/activemodel@7.0.3.1.rbi +5999 -0
  60. data/sorbet/rbi/gems/activerecord@7.0.3.1.rbi +37832 -0
  61. data/sorbet/rbi/gems/activestorage@7.0.3.1.rbi +2321 -0
  62. data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +18818 -0
  63. data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +11722 -0
  64. data/sorbet/rbi/gems/constant_resolver@0.2.0.rbi +90 -0
  65. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +1079 -0
  66. data/sorbet/rbi/gems/digest@3.1.0.rbi +189 -0
  67. data/sorbet/rbi/gems/erubi@1.11.0.rbi +140 -0
  68. data/sorbet/rbi/gems/globalid@1.0.0.rbi +572 -0
  69. data/sorbet/rbi/gems/i18n@1.12.0.rbi +2296 -0
  70. data/sorbet/rbi/gems/json@2.6.2.rbi +1548 -0
  71. data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +8 -0
  72. data/sorbet/rbi/gems/loofah@2.18.0.rbi +877 -0
  73. data/sorbet/rbi/gems/m@1.6.0.rbi +257 -0
  74. data/sorbet/rbi/gems/marcel@1.0.2.rbi +220 -0
  75. data/sorbet/rbi/gems/mini_mime@1.1.2.rbi +170 -0
  76. data/sorbet/rbi/gems/mini_portile2@2.8.0.rbi +8 -0
  77. data/sorbet/rbi/gems/minitest-focus@1.3.1.rbi +104 -0
  78. data/sorbet/rbi/gems/minitest@5.16.2.rbi +2136 -0
  79. data/sorbet/rbi/gems/mocha@1.14.0.rbi +4177 -0
  80. data/sorbet/rbi/gems/net-imap@0.2.3.rbi +2147 -0
  81. data/sorbet/rbi/gems/net-pop@0.1.1.rbi +926 -0
  82. data/sorbet/rbi/gems/net-protocol@0.1.3.rbi +11 -0
  83. data/sorbet/rbi/gems/net-smtp@0.3.1.rbi +1108 -0
  84. data/sorbet/rbi/gems/netrc@0.11.0.rbi +153 -0
  85. data/sorbet/rbi/gems/nio4r@2.5.8.rbi +292 -0
  86. data/sorbet/rbi/gems/nokogiri@1.13.8.rbi +6478 -0
  87. data/sorbet/rbi/gems/parallel@1.22.1.rbi +277 -0
  88. data/sorbet/rbi/gems/parser@3.1.2.1.rbi +9029 -0
  89. data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +8 -0
  90. data/sorbet/rbi/gems/pry@0.14.1.rbi +8 -0
  91. data/sorbet/rbi/gems/racc@1.6.0.rbi +152 -0
  92. data/sorbet/rbi/gems/rack-test@2.0.2.rbi +953 -0
  93. data/sorbet/rbi/gems/rack@2.2.4.rbi +5636 -0
  94. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +688 -0
  95. data/sorbet/rbi/gems/rails@7.0.3.1.rbi +8 -0
  96. data/sorbet/rbi/gems/railties@7.0.3.1.rbi +3507 -0
  97. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +392 -0
  98. data/sorbet/rbi/gems/rake@13.0.6.rbi +2924 -0
  99. data/sorbet/rbi/gems/rbi@0.0.15.rbi +3007 -0
  100. data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +3383 -0
  101. data/sorbet/rbi/gems/rexml@3.2.5.rbi +4714 -0
  102. data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +6961 -0
  103. data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +2986 -0
  104. data/sorbet/rbi/gems/{rubocop-shopify@2.0.1.rbi → rubocop-shopify@2.9.0.rbi} +4 -4
  105. data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +992 -0
  106. data/sorbet/rbi/gems/rubocop@1.34.1.rbi +51820 -0
  107. data/sorbet/rbi/gems/ruby-lsp@0.2.1.rbi +11 -0
  108. data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +474 -0
  109. data/sorbet/rbi/gems/spoom@1.1.11.rbi +2181 -0
  110. data/sorbet/rbi/gems/spring@4.0.0.rbi +411 -0
  111. data/sorbet/rbi/gems/strscan@3.0.4.rbi +8 -0
  112. data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +8 -0
  113. data/sorbet/rbi/gems/tapioca@0.9.2.rbi +3181 -0
  114. data/sorbet/rbi/gems/thor@1.2.1.rbi +3956 -0
  115. data/sorbet/rbi/gems/timeout@0.3.0.rbi +142 -0
  116. data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +5896 -0
  117. data/sorbet/rbi/gems/unicode-display_width@2.2.0.rbi +48 -0
  118. data/sorbet/rbi/gems/unparser@0.6.5.rbi +4529 -0
  119. data/sorbet/rbi/gems/webrick@1.7.0.rbi +2582 -0
  120. data/sorbet/rbi/gems/websocket-driver@0.7.5.rbi +993 -0
  121. data/sorbet/rbi/gems/yard-sorbet@0.6.1.rbi +388 -0
  122. data/sorbet/rbi/gems/yard@0.9.28.rbi +18242 -0
  123. data/sorbet/rbi/gems/zeitwerk@2.6.0.rbi +867 -0
  124. data/sorbet/rbi/shims/psych.rbi +5 -0
  125. data/sorbet/tapioca/require.rb +2 -3
  126. metadata +88 -157
  127. data/.github/probots.yml +0 -2
  128. data/library.yml +0 -6
  129. data/service.yml +0 -1
  130. data/sorbet/rbi/gems/actioncable@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -860
  131. data/sorbet/rbi/gems/actionmailbox@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -568
  132. data/sorbet/rbi/gems/actionmailer@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -587
  133. data/sorbet/rbi/gems/actionpack@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -5314
  134. data/sorbet/rbi/gems/actiontext@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -699
  135. data/sorbet/rbi/gems/actionview@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -2515
  136. data/sorbet/rbi/gems/activejob@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -624
  137. data/sorbet/rbi/gems/activemodel@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -1248
  138. data/sorbet/rbi/gems/activerecord@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8363
  139. data/sorbet/rbi/gems/activestorage@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -876
  140. data/sorbet/rbi/gems/activesupport@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -3987
  141. data/sorbet/rbi/gems/colorize@0.8.1.rbi +0 -40
  142. data/sorbet/rbi/gems/commander@4.5.2.rbi +0 -8
  143. data/sorbet/rbi/gems/concurrent-ruby@1.1.8.rbi +0 -1969
  144. data/sorbet/rbi/gems/constant_resolver@0.1.5.rbi +0 -26
  145. data/sorbet/rbi/gems/erubi@1.10.0.rbi +0 -41
  146. data/sorbet/rbi/gems/globalid@0.4.2.rbi +0 -178
  147. data/sorbet/rbi/gems/highline@2.0.3.rbi +0 -8
  148. data/sorbet/rbi/gems/i18n@1.8.10.rbi +0 -600
  149. data/sorbet/rbi/gems/loofah@2.9.0.rbi +0 -274
  150. data/sorbet/rbi/gems/m@1.5.1.rbi +0 -108
  151. data/sorbet/rbi/gems/marcel@1.0.0.rbi +0 -70
  152. data/sorbet/rbi/gems/mini_mime@1.0.3.rbi +0 -71
  153. data/sorbet/rbi/gems/minitest-focus@1.2.1.rbi +0 -8
  154. data/sorbet/rbi/gems/minitest@5.14.4.rbi +0 -544
  155. data/sorbet/rbi/gems/mocha@1.12.0.rbi +0 -953
  156. data/sorbet/rbi/gems/nio4r@2.5.7.rbi +0 -90
  157. data/sorbet/rbi/gems/nokogiri@1.11.2.rbi +0 -1647
  158. data/sorbet/rbi/gems/parallel@1.20.1.rbi +0 -117
  159. data/sorbet/rbi/gems/parlour@6.0.0.rbi +0 -1272
  160. data/sorbet/rbi/gems/parser@3.0.0.0.rbi +0 -1745
  161. data/sorbet/rbi/gems/pry@0.14.0.rbi +0 -8
  162. data/sorbet/rbi/gems/psych@3.3.2.rbi +0 -24
  163. data/sorbet/rbi/gems/racc@1.5.2.rbi +0 -57
  164. data/sorbet/rbi/gems/rack-test@1.1.0.rbi +0 -335
  165. data/sorbet/rbi/gems/rack@2.2.3.rbi +0 -1718
  166. data/sorbet/rbi/gems/rails-html-sanitizer@1.3.0.rbi +0 -213
  167. data/sorbet/rbi/gems/rails@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8
  168. data/sorbet/rbi/gems/railties@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -880
  169. data/sorbet/rbi/gems/rainbow@3.0.0.rbi +0 -155
  170. data/sorbet/rbi/gems/rake@13.0.3.rbi +0 -837
  171. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +0 -8
  172. data/sorbet/rbi/gems/rexml@3.2.4.rbi +0 -8
  173. data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +0 -8
  174. data/sorbet/rbi/gems/rubocop-performance@1.10.2.rbi +0 -8
  175. data/sorbet/rbi/gems/rubocop-sorbet@0.6.1.rbi +0 -8
  176. data/sorbet/rbi/gems/rubocop@1.12.0.rbi +0 -8
  177. data/sorbet/rbi/gems/smart_properties@1.15.0.rbi +0 -168
  178. data/sorbet/rbi/gems/spoom@1.1.0.rbi +0 -1061
  179. data/sorbet/rbi/gems/spring@2.1.1.rbi +0 -160
  180. data/sorbet/rbi/gems/sprockets-rails@3.2.2.rbi +0 -451
  181. data/sorbet/rbi/gems/sprockets@4.0.2.rbi +0 -1133
  182. data/sorbet/rbi/gems/tapioca@0.4.19.rbi +0 -603
  183. data/sorbet/rbi/gems/thor@1.1.0.rbi +0 -893
  184. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +0 -566
  185. data/sorbet/rbi/gems/unicode-display_width@2.0.0.rbi +0 -8
  186. data/sorbet/rbi/gems/websocket-driver@0.7.3.rbi +0 -438
  187. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +0 -177
@@ -0,0 +1,392 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `rainbow` gem.
5
+ # Please instead update this file by running `bin/tapioca gem rainbow`.
6
+
7
+ # source://rainbow-3.1.1/lib/rainbow/string_utils.rb:3
8
+ module Rainbow
9
+ class << self
10
+ # source://rainbow-3.1.1/lib/rainbow/global.rb:10
11
+ def enabled; end
12
+
13
+ # source://rainbow-3.1.1/lib/rainbow/global.rb:14
14
+ def enabled=(value); end
15
+
16
+ # source://rainbow-3.1.1/lib/rainbow/global.rb:6
17
+ def global; end
18
+
19
+ # source://rainbow-3.1.1/lib/rainbow.rb:6
20
+ def new; end
21
+
22
+ # source://rainbow-3.1.1/lib/rainbow/global.rb:18
23
+ def uncolor(string); end
24
+ end
25
+ end
26
+
27
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:4
28
+ class Rainbow::Color
29
+ # Returns the value of attribute ground.
30
+ #
31
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:5
32
+ def ground; end
33
+
34
+ class << self
35
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:7
36
+ def build(ground, values); end
37
+
38
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:40
39
+ def parse_hex_color(hex); end
40
+ end
41
+ end
42
+
43
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:54
44
+ class Rainbow::Color::Indexed < ::Rainbow::Color
45
+ # @return [Indexed] a new instance of Indexed
46
+ #
47
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:57
48
+ def initialize(ground, num); end
49
+
50
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:62
51
+ def codes; end
52
+
53
+ # Returns the value of attribute num.
54
+ #
55
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:55
56
+ def num; end
57
+ end
58
+
59
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:69
60
+ class Rainbow::Color::Named < ::Rainbow::Color::Indexed
61
+ # @return [Named] a new instance of Named
62
+ #
63
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:90
64
+ def initialize(ground, name); end
65
+
66
+ class << self
67
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:82
68
+ def color_names; end
69
+
70
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:86
71
+ def valid_names; end
72
+ end
73
+ end
74
+
75
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:70
76
+ Rainbow::Color::Named::NAMES = T.let(T.unsafe(nil), Hash)
77
+
78
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:100
79
+ class Rainbow::Color::RGB < ::Rainbow::Color::Indexed
80
+ # @return [RGB] a new instance of RGB
81
+ #
82
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:107
83
+ def initialize(ground, *values); end
84
+
85
+ # Returns the value of attribute b.
86
+ #
87
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:101
88
+ def b; end
89
+
90
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:116
91
+ def codes; end
92
+
93
+ # Returns the value of attribute g.
94
+ #
95
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:101
96
+ def g; end
97
+
98
+ # Returns the value of attribute r.
99
+ #
100
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:101
101
+ def r; end
102
+
103
+ private
104
+
105
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:122
106
+ def code_from_rgb; end
107
+
108
+ class << self
109
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:103
110
+ def to_ansi_domain(value); end
111
+ end
112
+ end
113
+
114
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:129
115
+ class Rainbow::Color::X11Named < ::Rainbow::Color::RGB
116
+ include ::Rainbow::X11ColorNames
117
+
118
+ # @return [X11Named] a new instance of X11Named
119
+ #
120
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:140
121
+ def initialize(ground, name); end
122
+
123
+ class << self
124
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:132
125
+ def color_names; end
126
+
127
+ # source://rainbow-3.1.1/lib/rainbow/color.rb:136
128
+ def valid_names; end
129
+ end
130
+ end
131
+
132
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:4
133
+ class Rainbow::NullPresenter < ::String
134
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:9
135
+ def background(*_values); end
136
+
137
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:9
138
+ def bg(*_values); end
139
+
140
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:49
141
+ def black; end
142
+
143
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:33
144
+ def blink; end
145
+
146
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:65
147
+ def blue; end
148
+
149
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:17
150
+ def bold; end
151
+
152
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:17
153
+ def bright; end
154
+
155
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:5
156
+ def color(*_values); end
157
+
158
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:45
159
+ def cross_out; end
160
+
161
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:73
162
+ def cyan; end
163
+
164
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:21
165
+ def dark; end
166
+
167
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:21
168
+ def faint; end
169
+
170
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:5
171
+ def fg(*_values); end
172
+
173
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:5
174
+ def foreground(*_values); end
175
+
176
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:57
177
+ def green; end
178
+
179
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:41
180
+ def hide; end
181
+
182
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:37
183
+ def inverse; end
184
+
185
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:25
186
+ def italic; end
187
+
188
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:69
189
+ def magenta; end
190
+
191
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:81
192
+ def method_missing(method_name, *args); end
193
+
194
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:53
195
+ def red; end
196
+
197
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:13
198
+ def reset; end
199
+
200
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:45
201
+ def strike; end
202
+
203
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:29
204
+ def underline; end
205
+
206
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:77
207
+ def white; end
208
+
209
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:61
210
+ def yellow; end
211
+
212
+ private
213
+
214
+ # @return [Boolean]
215
+ #
216
+ # source://rainbow-3.1.1/lib/rainbow/null_presenter.rb:89
217
+ def respond_to_missing?(method_name, *args); end
218
+ end
219
+
220
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:8
221
+ class Rainbow::Presenter < ::String
222
+ # Sets background color of this text.
223
+ #
224
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:30
225
+ def background(*values); end
226
+
227
+ # Sets background color of this text.
228
+ #
229
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:30
230
+ def bg(*values); end
231
+
232
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:92
233
+ def black; end
234
+
235
+ # Turns on blinking attribute for this text (not well supported by terminal
236
+ # emulators).
237
+ #
238
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:72
239
+ def blink; end
240
+
241
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:108
242
+ def blue; end
243
+
244
+ # Turns on bright/bold for this text.
245
+ #
246
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:45
247
+ def bold; end
248
+
249
+ # Turns on bright/bold for this text.
250
+ #
251
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:45
252
+ def bright; end
253
+
254
+ # Sets color of this text.
255
+ #
256
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:22
257
+ def color(*values); end
258
+
259
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:86
260
+ def cross_out; end
261
+
262
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:116
263
+ def cyan; end
264
+
265
+ # Turns on faint/dark for this text (not well supported by terminal
266
+ # emulators).
267
+ #
268
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:53
269
+ def dark; end
270
+
271
+ # Turns on faint/dark for this text (not well supported by terminal
272
+ # emulators).
273
+ #
274
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:53
275
+ def faint; end
276
+
277
+ # Sets color of this text.
278
+ #
279
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:22
280
+ def fg(*values); end
281
+
282
+ # Sets color of this text.
283
+ #
284
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:22
285
+ def foreground(*values); end
286
+
287
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:100
288
+ def green; end
289
+
290
+ # Hides this text (set its color to the same as background).
291
+ #
292
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:82
293
+ def hide; end
294
+
295
+ # Inverses current foreground/background colors.
296
+ #
297
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:77
298
+ def inverse; end
299
+
300
+ # Turns on italic style for this text (not well supported by terminal
301
+ # emulators).
302
+ #
303
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:61
304
+ def italic; end
305
+
306
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:112
307
+ def magenta; end
308
+
309
+ # We take care of X11 color method call here.
310
+ # Such as #aqua, #ghostwhite.
311
+ #
312
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:126
313
+ def method_missing(method_name, *args); end
314
+
315
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:96
316
+ def red; end
317
+
318
+ # Resets terminal to default colors/backgrounds.
319
+ #
320
+ # It shouldn't be needed to use this method because all methods
321
+ # append terminal reset code to end of string.
322
+ #
323
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:40
324
+ def reset; end
325
+
326
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:86
327
+ def strike; end
328
+
329
+ # Turns on underline decoration for this text.
330
+ #
331
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:66
332
+ def underline; end
333
+
334
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:120
335
+ def white; end
336
+
337
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:104
338
+ def yellow; end
339
+
340
+ private
341
+
342
+ # @return [Boolean]
343
+ #
344
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:134
345
+ def respond_to_missing?(method_name, *args); end
346
+
347
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:140
348
+ def wrap_with_sgr(codes); end
349
+ end
350
+
351
+ # source://rainbow-3.1.1/lib/rainbow/presenter.rb:9
352
+ Rainbow::Presenter::TERM_EFFECTS = T.let(T.unsafe(nil), Hash)
353
+
354
+ # source://rainbow-3.1.1/lib/rainbow/string_utils.rb:4
355
+ class Rainbow::StringUtils
356
+ class << self
357
+ # source://rainbow-3.1.1/lib/rainbow/string_utils.rb:17
358
+ def uncolor(string); end
359
+
360
+ # source://rainbow-3.1.1/lib/rainbow/string_utils.rb:5
361
+ def wrap_with_sgr(string, codes); end
362
+ end
363
+ end
364
+
365
+ # source://rainbow-3.1.1/lib/rainbow/wrapper.rb:7
366
+ class Rainbow::Wrapper
367
+ # @return [Wrapper] a new instance of Wrapper
368
+ #
369
+ # source://rainbow-3.1.1/lib/rainbow/wrapper.rb:10
370
+ def initialize(enabled = T.unsafe(nil)); end
371
+
372
+ # Returns the value of attribute enabled.
373
+ #
374
+ # source://rainbow-3.1.1/lib/rainbow/wrapper.rb:8
375
+ def enabled; end
376
+
377
+ # Sets the attribute enabled
378
+ #
379
+ # @param value the value to set the attribute enabled to.
380
+ #
381
+ # source://rainbow-3.1.1/lib/rainbow/wrapper.rb:8
382
+ def enabled=(_arg0); end
383
+
384
+ # source://rainbow-3.1.1/lib/rainbow/wrapper.rb:14
385
+ def wrap(string); end
386
+ end
387
+
388
+ # source://rainbow-3.1.1/lib/rainbow/x11_color_names.rb:4
389
+ module Rainbow::X11ColorNames; end
390
+
391
+ # source://rainbow-3.1.1/lib/rainbow/x11_color_names.rb:5
392
+ Rainbow::X11ColorNames::NAMES = T.let(T.unsafe(nil), Hash)