clean-architecture 5.0.2 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (166) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +15 -19
  3. data/.gitignore +4 -0
  4. data/CHANGELOG.md +4 -0
  5. data/Gemfile +1 -0
  6. data/README.md +1 -585
  7. data/bin/tapioca +29 -0
  8. data/clean-architecture.gemspec +4 -4
  9. data/lib/clean-architecture.rb +4 -1
  10. data/lib/clean_architecture/adapters/all.rb +1 -1
  11. data/lib/clean_architecture/adapters/attribute_hash_base.rb +47 -20
  12. data/lib/clean_architecture/all.rb +1 -4
  13. data/lib/clean_architecture/builders/abstract_active_record_entity_builder.rb +43 -13
  14. data/lib/clean_architecture/builders/all.rb +1 -1
  15. data/lib/clean_architecture/checks/all.rb +1 -1
  16. data/lib/clean_architecture/checks/authorization.rb +11 -9
  17. data/lib/clean_architecture/entities/all.rb +1 -3
  18. data/lib/clean_architecture/entities/failure_details.rb +27 -17
  19. data/lib/clean_architecture/matchers/all.rb +1 -1
  20. data/lib/clean_architecture/matchers/use_case_result.rb +9 -3
  21. data/lib/clean_architecture/queries/all.rb +1 -1
  22. data/lib/clean_architecture/queries/http_failure_code.rb +8 -20
  23. data/lib/clean_architecture/queries/http_success_code.rb +14 -7
  24. data/lib/clean_architecture/serializers/all.rb +1 -1
  25. data/lib/clean_architecture/serializers/html_response_from_result.rb +7 -1
  26. data/lib/clean_architecture/serializers/json_response_from_result.rb +4 -4
  27. data/lib/clean_architecture/version.rb +1 -1
  28. data/nix/sources.json +14 -0
  29. data/nix/sources.nix +174 -0
  30. data/run_ci.sh +7 -0
  31. data/shell.nix +17 -12
  32. data/sorbet/config +4 -0
  33. data/sorbet/{rbi/gems → dry-monads-sorbet}/dry-monads.rbi +176 -94
  34. data/sorbet/rbi/gems/activemodel@6.1.4.1.rbi +1292 -0
  35. data/sorbet/rbi/gems/activerecord@6.1.4.1.rbi +8092 -0
  36. data/sorbet/rbi/gems/activesupport@6.1.4.1.rbi +3531 -0
  37. data/sorbet/rbi/gems/{ast.rbi → ast@2.4.2.rbi} +28 -22
  38. data/sorbet/rbi/gems/byebug@11.1.3.rbi +1568 -0
  39. data/sorbet/rbi/gems/coderay@1.1.3.rbi +1005 -0
  40. data/sorbet/rbi/gems/concurrent-ruby@1.1.9.rbi +915 -0
  41. data/sorbet/rbi/gems/diff-lcs@1.4.4.rbi +8 -0
  42. data/sorbet/rbi/gems/docile@1.4.0.rbi +54 -0
  43. data/sorbet/rbi/gems/dry-core@0.7.1.rbi +92 -0
  44. data/sorbet/rbi/gems/dry-equalizer@0.3.0.rbi +28 -0
  45. data/sorbet/rbi/gems/dry-matcher@0.9.0.rbi +56 -0
  46. data/sorbet/rbi/gems/dry-monads-sorbet@1.1.7.rbi +41 -0
  47. data/sorbet/rbi/gems/dry-monads@1.4.0.rbi +697 -0
  48. data/sorbet/rbi/gems/em-websocket@0.5.2.rbi +8 -0
  49. data/sorbet/rbi/gems/eventmachine@1.2.7.rbi +45 -0
  50. data/sorbet/rbi/gems/ffi@1.15.4.rbi +8 -0
  51. data/sorbet/rbi/gems/formatador@0.3.0.rbi +8 -0
  52. data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +31 -0
  53. data/sorbet/rbi/gems/guard-livereload@2.5.2.rbi +8 -0
  54. data/sorbet/rbi/gems/guard-rspec@4.7.3.rbi +211 -0
  55. data/sorbet/rbi/gems/guard@2.18.0.rbi +8 -0
  56. data/sorbet/rbi/gems/http_parser.rb@0.6.0.rbi +8 -0
  57. data/sorbet/rbi/gems/i18n@1.8.10.rbi +8 -0
  58. data/sorbet/rbi/gems/listen@3.7.0.rbi +8 -0
  59. data/sorbet/rbi/gems/lumberjack@1.2.8.rbi +8 -0
  60. data/sorbet/rbi/gems/method_source@1.0.0.rbi +72 -0
  61. data/sorbet/rbi/gems/minitest@5.14.4.rbi +344 -0
  62. data/sorbet/rbi/gems/multi_json@1.15.0.rbi +8 -0
  63. data/sorbet/rbi/gems/nenv@0.3.0.rbi +8 -0
  64. data/sorbet/rbi/gems/notiffany@0.1.3.rbi +8 -0
  65. data/sorbet/rbi/gems/parallel@1.21.0.rbi +113 -0
  66. data/sorbet/rbi/gems/{parser.rbi → parser@3.0.2.0.rbi} +966 -699
  67. data/sorbet/rbi/gems/pry-byebug@3.9.0.rbi +461 -0
  68. data/sorbet/rbi/gems/{pry.rbi → pry@0.13.1.rbi} +2191 -1605
  69. data/sorbet/rbi/gems/{rainbow.rbi → rainbow@3.0.0.rbi} +90 -55
  70. data/sorbet/rbi/gems/{rake.rbi → rake@13.0.6.rbi} +578 -427
  71. data/sorbet/rbi/gems/rb-fsevent@0.11.0.rbi +8 -0
  72. data/sorbet/rbi/gems/rb-inotify@0.10.1.rbi +8 -0
  73. data/sorbet/rbi/gems/rb-readline@0.5.5.rbi +884 -0
  74. data/sorbet/rbi/gems/rbi@0.0.6.rbi +1405 -0
  75. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +1120 -0
  76. data/sorbet/rbi/gems/{rexml.rbi → rexml@3.2.5.rbi} +562 -479
  77. data/sorbet/rbi/gems/{rspec-core.rbi → rspec-core@3.10.1.rbi} +2317 -1533
  78. data/sorbet/rbi/gems/rspec-expectations@3.10.1.rbi +1574 -0
  79. data/sorbet/rbi/gems/rspec-mocks@3.10.2.rbi +1462 -0
  80. data/sorbet/rbi/gems/rspec-support@3.10.2.rbi +509 -0
  81. data/sorbet/rbi/gems/rspec@3.10.0.rbi +38 -0
  82. data/sorbet/rbi/gems/rubocop-ast@1.12.0.rbi +1938 -0
  83. data/sorbet/rbi/gems/rubocop-rspec@2.5.0.rbi +1786 -0
  84. data/sorbet/rbi/gems/rubocop@1.22.1.rbi +13252 -0
  85. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +405 -0
  86. data/sorbet/rbi/gems/shellany@0.0.1.rbi +8 -0
  87. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +89 -0
  88. data/sorbet/rbi/gems/simplecov@0.21.2.rbi +577 -0
  89. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.3.rbi +8 -0
  90. data/sorbet/rbi/gems/sorbet-struct-comparable@1.1.0.rbi +17 -0
  91. data/sorbet/rbi/gems/spoom@1.1.5.rbi +1241 -0
  92. data/sorbet/rbi/gems/stackprof@0.2.17.rbi +98 -0
  93. data/sorbet/rbi/gems/tapioca@0.5.2.rbi +949 -0
  94. data/sorbet/rbi/gems/thor@1.1.0.rbi +839 -0
  95. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +8 -0
  96. data/sorbet/rbi/gems/unicode-display_width@2.1.0.rbi +26 -0
  97. data/sorbet/rbi/gems/unparser@0.6.0.rbi +8 -0
  98. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +8 -0
  99. data/sorbet/tapioca/require.rb +9 -0
  100. metadata +88 -91
  101. data/.ruby-version +0 -1
  102. data/lib/clean_architecture/entities/targeted_parameters.rb +0 -24
  103. data/lib/clean_architecture/entities/untargeted_parameters.rb +0 -21
  104. data/lib/clean_architecture/interfaces/all.rb +0 -12
  105. data/lib/clean_architecture/interfaces/authorization_parameters.rb +0 -19
  106. data/lib/clean_architecture/interfaces/base_parameters.rb +0 -24
  107. data/lib/clean_architecture/interfaces/jsonable.rb +0 -16
  108. data/lib/clean_architecture/interfaces/targeted_parameters.rb +0 -19
  109. data/lib/clean_architecture/interfaces/use_case.rb +0 -20
  110. data/lib/clean_architecture/interfaces/use_case_actor.rb +0 -20
  111. data/lib/clean_architecture/interfaces/use_case_target.rb +0 -24
  112. data/lib/clean_architecture/types.rb +0 -8
  113. data/lib/clean_architecture/use_cases/abstract_use_case.rb +0 -63
  114. data/lib/clean_architecture/use_cases/all.rb +0 -10
  115. data/lib/clean_architecture/use_cases/contract.rb +0 -9
  116. data/lib/clean_architecture/use_cases/errors.rb +0 -58
  117. data/lib/clean_architecture/use_cases/form.rb +0 -116
  118. data/lib/clean_architecture/use_cases/parameters.rb +0 -43
  119. data/sorbet/rbi/gems/activemodel.rbi +0 -75
  120. data/sorbet/rbi/gems/activesupport.rbi +0 -440
  121. data/sorbet/rbi/gems/byebug.rbi +0 -1040
  122. data/sorbet/rbi/gems/coderay.rbi +0 -92
  123. data/sorbet/rbi/gems/concurrent-ruby.rbi +0 -1586
  124. data/sorbet/rbi/gems/docile.rbi +0 -32
  125. data/sorbet/rbi/gems/dry-configurable.rbi +0 -139
  126. data/sorbet/rbi/gems/dry-container.rbi +0 -89
  127. data/sorbet/rbi/gems/dry-core.rbi +0 -80
  128. data/sorbet/rbi/gems/dry-equalizer.rbi +0 -26
  129. data/sorbet/rbi/gems/dry-inflector.rbi +0 -73
  130. data/sorbet/rbi/gems/dry-initializer.rbi +0 -209
  131. data/sorbet/rbi/gems/dry-logic.rbi +0 -305
  132. data/sorbet/rbi/gems/dry-matcher.rbi +0 -34
  133. data/sorbet/rbi/gems/dry-schema.rbi +0 -786
  134. data/sorbet/rbi/gems/dry-struct.rbi +0 -137
  135. data/sorbet/rbi/gems/dry-types.rbi +0 -709
  136. data/sorbet/rbi/gems/dry-validation.rbi +0 -288
  137. data/sorbet/rbi/gems/duckface-interfaces.rbi +0 -94
  138. data/sorbet/rbi/gems/i18n.rbi +0 -133
  139. data/sorbet/rbi/gems/jaro_winkler.rbi +0 -15
  140. data/sorbet/rbi/gems/method_source.rbi +0 -64
  141. data/sorbet/rbi/gems/parallel.rbi +0 -82
  142. data/sorbet/rbi/gems/pry-byebug.rbi +0 -155
  143. data/sorbet/rbi/gems/rb-readline.rbi +0 -767
  144. data/sorbet/rbi/gems/rspec-expectations.rbi +0 -398
  145. data/sorbet/rbi/gems/rspec-mocks.rbi +0 -816
  146. data/sorbet/rbi/gems/rspec-support.rbi +0 -271
  147. data/sorbet/rbi/gems/rspec.rbi +0 -15
  148. data/sorbet/rbi/gems/rubocop-rspec.rbi +0 -922
  149. data/sorbet/rbi/gems/rubocop.rbi +0 -7319
  150. data/sorbet/rbi/gems/ruby-progressbar.rbi +0 -305
  151. data/sorbet/rbi/gems/simplecov-html.rbi +0 -35
  152. data/sorbet/rbi/gems/simplecov.rbi +0 -361
  153. data/sorbet/rbi/gems/stackprof.rbi +0 -52
  154. data/sorbet/rbi/gems/unicode-display_width.rbi +0 -17
  155. data/sorbet/rbi/hidden-definitions/errors.txt +0 -8580
  156. data/sorbet/rbi/hidden-definitions/hidden.rbi +0 -17036
  157. data/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +0 -452
  158. data/sorbet/rbi/sorbet-typed/lib/activesupport/>=6.0.0.rc1/activesupport.rbi +0 -23
  159. data/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +0 -979
  160. data/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +0 -8684
  161. data/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +0 -108
  162. data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +0 -276
  163. data/sorbet/rbi/sorbet-typed/lib/ruby/all/gem.rbi +0 -4222
  164. data/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +0 -111
  165. data/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +0 -543
  166. data/sorbet/rbi/todo.rbi +0 -10
@@ -0,0 +1,839 @@
1
+ # DO NOT EDIT MANUALLY
2
+ # This is an autogenerated file for types exported from the `thor` gem.
3
+ # Please instead update this file by running `bin/tapioca gem thor`.
4
+
5
+ # typed: true
6
+
7
+ class Thor
8
+ include ::Thor::Base
9
+ include ::Thor::Invocation
10
+ include ::Thor::Shell
11
+ extend ::Thor::Base::ClassMethods
12
+ extend ::Thor::Invocation::ClassMethods
13
+
14
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
15
+
16
+ class << self
17
+ def check_unknown_options!(options = T.unsafe(nil)); end
18
+ def check_unknown_options?(config); end
19
+ def command_help(shell, command_name); end
20
+ def default_command(meth = T.unsafe(nil)); end
21
+ def default_task(meth = T.unsafe(nil)); end
22
+ def deprecation_warning(message); end
23
+ def desc(usage, description, options = T.unsafe(nil)); end
24
+ def disable_required_check!(*command_names); end
25
+ def disable_required_check?(command); end
26
+ def help(shell, subcommand = T.unsafe(nil)); end
27
+ def long_desc(long_description, options = T.unsafe(nil)); end
28
+ def map(mappings = T.unsafe(nil), **kw); end
29
+ def method_option(name, options = T.unsafe(nil)); end
30
+ def method_options(options = T.unsafe(nil)); end
31
+ def option(name, options = T.unsafe(nil)); end
32
+ def options(options = T.unsafe(nil)); end
33
+ def package_name(name, _ = T.unsafe(nil)); end
34
+ def printable_commands(all = T.unsafe(nil), subcommand = T.unsafe(nil)); end
35
+ def printable_tasks(all = T.unsafe(nil), subcommand = T.unsafe(nil)); end
36
+ def register(klass, subcommand_name, usage, description, options = T.unsafe(nil)); end
37
+ def stop_on_unknown_option!(*command_names); end
38
+ def stop_on_unknown_option?(command); end
39
+ def subcommand(subcommand, subcommand_class); end
40
+ def subcommand_classes; end
41
+ def subcommands; end
42
+ def subtask(subcommand, subcommand_class); end
43
+ def subtasks; end
44
+ def task_help(shell, command_name); end
45
+
46
+ protected
47
+
48
+ def banner(command, namespace = T.unsafe(nil), subcommand = T.unsafe(nil)); end
49
+ def baseclass; end
50
+ def create_command(meth); end
51
+ def create_task(meth); end
52
+ def disable_required_check; end
53
+ def dispatch(meth, given_args, given_opts, config); end
54
+ def dynamic_command_class; end
55
+ def find_command_possibilities(meth); end
56
+ def find_task_possibilities(meth); end
57
+ def initialize_added; end
58
+ def normalize_command_name(meth); end
59
+ def normalize_task_name(meth); end
60
+ def retrieve_command_name(args); end
61
+ def retrieve_task_name(args); end
62
+ def stop_on_unknown_option; end
63
+ def subcommand_help(cmd); end
64
+ def subtask_help(cmd); end
65
+ end
66
+ end
67
+
68
+ module Thor::Actions
69
+ mixes_in_class_methods ::Thor::Actions::ClassMethods
70
+
71
+ def initialize(args = T.unsafe(nil), options = T.unsafe(nil), config = T.unsafe(nil)); end
72
+
73
+ def action(instance); end
74
+ def add_file(destination, *args, &block); end
75
+ def add_link(destination, *args); end
76
+ def append_file(path, *args, &block); end
77
+ def append_to_file(path, *args, &block); end
78
+ def apply(path, config = T.unsafe(nil)); end
79
+ def behavior; end
80
+ def behavior=(_arg0); end
81
+ def chmod(path, mode, config = T.unsafe(nil)); end
82
+ def comment_lines(path, flag, *args); end
83
+ def copy_file(source, *args, &block); end
84
+ def create_file(destination, *args, &block); end
85
+ def create_link(destination, *args); end
86
+ def destination_root; end
87
+ def destination_root=(root); end
88
+ def directory(source, *args, &block); end
89
+ def empty_directory(destination, config = T.unsafe(nil)); end
90
+ def find_in_source_paths(file); end
91
+ def get(source, *args, &block); end
92
+ def gsub_file(path, flag, *args, &block); end
93
+ def in_root; end
94
+ def inject_into_class(path, klass, *args, &block); end
95
+ def inject_into_file(destination, *args, &block); end
96
+ def inject_into_module(path, module_name, *args, &block); end
97
+ def insert_into_file(destination, *args, &block); end
98
+ def inside(dir = T.unsafe(nil), config = T.unsafe(nil), &block); end
99
+ def link_file(source, *args); end
100
+ def prepend_file(path, *args, &block); end
101
+ def prepend_to_file(path, *args, &block); end
102
+ def relative_to_original_destination_root(path, remove_dot = T.unsafe(nil)); end
103
+ def remove_dir(path, config = T.unsafe(nil)); end
104
+ def remove_file(path, config = T.unsafe(nil)); end
105
+ def run(command, config = T.unsafe(nil)); end
106
+ def run_ruby_script(command, config = T.unsafe(nil)); end
107
+ def source_paths; end
108
+ def template(source, *args, &block); end
109
+ def thor(command, *args); end
110
+ def uncomment_lines(path, flag, *args); end
111
+
112
+ protected
113
+
114
+ def _cleanup_options_and_set(options, key); end
115
+ def _shared_configuration; end
116
+
117
+ private
118
+
119
+ def capture(*args); end
120
+ def concat(string); end
121
+ def output_buffer; end
122
+ def output_buffer=(_arg0); end
123
+ def with_output_buffer(buf = T.unsafe(nil)); end
124
+
125
+ class << self
126
+ def included(base); end
127
+ end
128
+ end
129
+
130
+ class Thor::Actions::CapturableERB < ::ERB
131
+ def set_eoutvar(compiler, eoutvar = T.unsafe(nil)); end
132
+ end
133
+
134
+ module Thor::Actions::ClassMethods
135
+ def add_runtime_options!; end
136
+ def source_paths; end
137
+ def source_paths_for_search; end
138
+ def source_root(path = T.unsafe(nil)); end
139
+ end
140
+
141
+ class Thor::Actions::CreateFile < ::Thor::Actions::EmptyDirectory
142
+ def initialize(base, destination, data, config = T.unsafe(nil)); end
143
+
144
+ def data; end
145
+ def identical?; end
146
+ def invoke!; end
147
+ def render; end
148
+
149
+ protected
150
+
151
+ def force_on_collision?; end
152
+ def force_or_skip_or_conflict(force, skip, &block); end
153
+ def on_conflict_behavior(&block); end
154
+ end
155
+
156
+ class Thor::Actions::CreateLink < ::Thor::Actions::CreateFile
157
+ def data; end
158
+ def exists?; end
159
+ def identical?; end
160
+ def invoke!; end
161
+ end
162
+
163
+ class Thor::Actions::Directory < ::Thor::Actions::EmptyDirectory
164
+ def initialize(base, source, destination = T.unsafe(nil), config = T.unsafe(nil), &block); end
165
+
166
+ def invoke!; end
167
+ def revoke!; end
168
+ def source; end
169
+
170
+ protected
171
+
172
+ def execute!; end
173
+ def file_level_lookup(previous_lookup); end
174
+ def files(lookup); end
175
+ end
176
+
177
+ class Thor::Actions::EmptyDirectory
178
+ def initialize(base, destination, config = T.unsafe(nil)); end
179
+
180
+ def base; end
181
+ def config; end
182
+ def destination; end
183
+ def exists?; end
184
+ def given_destination; end
185
+ def invoke!; end
186
+ def relative_destination; end
187
+ def revoke!; end
188
+
189
+ protected
190
+
191
+ def convert_encoded_instructions(filename); end
192
+ def destination=(destination); end
193
+ def invoke_with_conflict_check(&block); end
194
+ def on_conflict_behavior; end
195
+ def on_file_clash_behavior; end
196
+ def pretend?; end
197
+ def say_status(status, color); end
198
+ end
199
+
200
+ class Thor::Actions::InjectIntoFile < ::Thor::Actions::EmptyDirectory
201
+ def initialize(base, destination, data, config); end
202
+
203
+ def behavior; end
204
+ def flag; end
205
+ def invoke!; end
206
+ def replacement; end
207
+ def revoke!; end
208
+
209
+ protected
210
+
211
+ def replace!(regexp, string, force); end
212
+ def say_status(behavior, warning: T.unsafe(nil), color: T.unsafe(nil)); end
213
+ end
214
+
215
+ Thor::Actions::WARNINGS = T.let(T.unsafe(nil), Hash)
216
+ class Thor::AmbiguousCommandError < ::Thor::Error; end
217
+ Thor::AmbiguousTaskError = Thor::AmbiguousCommandError
218
+
219
+ class Thor::Argument
220
+ def initialize(name, options = T.unsafe(nil)); end
221
+
222
+ def banner; end
223
+ def default; end
224
+ def description; end
225
+ def enum; end
226
+ def human_name; end
227
+ def name; end
228
+ def required; end
229
+ def required?; end
230
+ def show_default?; end
231
+ def type; end
232
+ def usage; end
233
+
234
+ protected
235
+
236
+ def default_banner; end
237
+ def valid_type?(type); end
238
+ def validate!; end
239
+ end
240
+
241
+ Thor::Argument::VALID_TYPES = T.let(T.unsafe(nil), Array)
242
+
243
+ class Thor::Arguments
244
+ def initialize(arguments = T.unsafe(nil)); end
245
+
246
+ def parse(args); end
247
+ def remaining; end
248
+
249
+ private
250
+
251
+ def check_requirement!; end
252
+ def current_is_value?; end
253
+ def last?; end
254
+ def no_or_skip?(arg); end
255
+ def parse_array(name); end
256
+ def parse_hash(name); end
257
+ def parse_numeric(name); end
258
+ def parse_string(name); end
259
+ def peek; end
260
+ def shift; end
261
+ def unshift(arg); end
262
+
263
+ class << self
264
+ def parse(*args); end
265
+ def split(args); end
266
+ end
267
+ end
268
+
269
+ Thor::Arguments::NUMERIC = T.let(T.unsafe(nil), Regexp)
270
+
271
+ module Thor::Base
272
+ include ::Thor::Invocation
273
+ include ::Thor::Shell
274
+
275
+ mixes_in_class_methods ::Thor::Base::ClassMethods
276
+ mixes_in_class_methods ::Thor::Invocation::ClassMethods
277
+
278
+ def initialize(args = T.unsafe(nil), local_options = T.unsafe(nil), config = T.unsafe(nil)); end
279
+
280
+ def args; end
281
+ def args=(_arg0); end
282
+ def options; end
283
+ def options=(_arg0); end
284
+ def parent_options; end
285
+ def parent_options=(_arg0); end
286
+
287
+ class << self
288
+ def included(base); end
289
+ def register_klass_file(klass); end
290
+ def shell; end
291
+ def shell=(_arg0); end
292
+ def subclass_files; end
293
+ def subclasses; end
294
+ end
295
+ end
296
+
297
+ module Thor::Base::ClassMethods
298
+ def all_commands; end
299
+ def all_tasks; end
300
+ def allow_incompatible_default_type!; end
301
+ def argument(name, options = T.unsafe(nil)); end
302
+ def arguments; end
303
+ def attr_accessor(*_arg0); end
304
+ def attr_reader(*_arg0); end
305
+ def attr_writer(*_arg0); end
306
+ def check_default_type; end
307
+ def check_default_type!; end
308
+ def check_unknown_options; end
309
+ def check_unknown_options!; end
310
+ def check_unknown_options?(config); end
311
+ def class_option(name, options = T.unsafe(nil)); end
312
+ def class_options(options = T.unsafe(nil)); end
313
+ def commands; end
314
+ def disable_required_check?(command_name); end
315
+ def exit_on_failure?; end
316
+ def group(name = T.unsafe(nil)); end
317
+ def handle_argument_error(command, error, args, arity); end
318
+ def handle_no_command_error(command, has_namespace = T.unsafe(nil)); end
319
+ def handle_no_task_error(command, has_namespace = T.unsafe(nil)); end
320
+ def namespace(name = T.unsafe(nil)); end
321
+ def no_commands(&block); end
322
+ def no_commands?; end
323
+ def no_commands_context; end
324
+ def no_tasks(&block); end
325
+ def public_command(*names); end
326
+ def public_task(*names); end
327
+ def remove_argument(*names); end
328
+ def remove_class_option(*names); end
329
+ def remove_command(*names); end
330
+ def remove_task(*names); end
331
+ def start(given_args = T.unsafe(nil), config = T.unsafe(nil)); end
332
+ def stop_on_unknown_option?(command_name); end
333
+ def strict_args_position; end
334
+ def strict_args_position!; end
335
+ def strict_args_position?(config); end
336
+ def tasks; end
337
+
338
+ protected
339
+
340
+ def baseclass; end
341
+ def basename; end
342
+ def build_option(name, options, scope); end
343
+ def build_options(options, scope); end
344
+ def class_options_help(shell, groups = T.unsafe(nil)); end
345
+ def create_command(meth); end
346
+ def create_task(meth); end
347
+ def dispatch(command, given_args, given_opts, config); end
348
+ def find_and_refresh_command(name); end
349
+ def find_and_refresh_task(name); end
350
+ def from_superclass(method, default = T.unsafe(nil)); end
351
+ def inherited(klass); end
352
+ def initialize_added; end
353
+ def is_thor_reserved_word?(word, type); end
354
+ def method_added(meth); end
355
+ def print_options(shell, options, group_name = T.unsafe(nil)); end
356
+ end
357
+
358
+ class Thor::Command < ::Struct
359
+ def initialize(name, description, long_description, usage, options = T.unsafe(nil)); end
360
+
361
+ def formatted_usage(klass, namespace = T.unsafe(nil), subcommand = T.unsafe(nil)); end
362
+ def hidden?; end
363
+ def run(instance, args = T.unsafe(nil)); end
364
+
365
+ protected
366
+
367
+ def handle_argument_error?(instance, error, caller); end
368
+ def handle_no_method_error?(instance, error, caller); end
369
+ def local_method?(instance, name); end
370
+ def not_debugging?(instance); end
371
+ def private_method?(instance); end
372
+ def public_method?(instance); end
373
+ def required_arguments_for(klass, usage); end
374
+ def required_options; end
375
+ def sans_backtrace(backtrace, caller); end
376
+
377
+ private
378
+
379
+ def initialize_copy(other); end
380
+ end
381
+
382
+ Thor::Command::FILE_REGEXP = T.let(T.unsafe(nil), Regexp)
383
+ module Thor::CoreExt; end
384
+
385
+ class Thor::CoreExt::HashWithIndifferentAccess < ::Hash
386
+ def initialize(hash = T.unsafe(nil)); end
387
+
388
+ def [](key); end
389
+ def []=(key, value); end
390
+ def delete(key); end
391
+ def fetch(key, *args); end
392
+ def key?(key); end
393
+ def merge(other); end
394
+ def merge!(other); end
395
+ def replace(other_hash); end
396
+ def reverse_merge(other); end
397
+ def reverse_merge!(other_hash); end
398
+ def to_hash; end
399
+ def values_at(*indices); end
400
+
401
+ protected
402
+
403
+ def convert_key(key); end
404
+ def method_missing(method, *args); end
405
+ end
406
+
407
+ Thor::Correctable = DidYouMean::Correctable
408
+
409
+ class Thor::DynamicCommand < ::Thor::Command
410
+ def initialize(name, options = T.unsafe(nil)); end
411
+
412
+ def run(instance, args = T.unsafe(nil)); end
413
+ end
414
+
415
+ Thor::DynamicTask = Thor::DynamicCommand
416
+ class Thor::Error < ::StandardError; end
417
+
418
+ class Thor::Group
419
+ include ::Thor::Base
420
+ include ::Thor::Invocation
421
+ include ::Thor::Shell
422
+ extend ::Thor::Base::ClassMethods
423
+ extend ::Thor::Invocation::ClassMethods
424
+
425
+ protected
426
+
427
+ def _invoke_for_class_method(klass, command = T.unsafe(nil), *args, &block); end
428
+
429
+ class << self
430
+ def class_options_help(shell, groups = T.unsafe(nil)); end
431
+ def desc(description = T.unsafe(nil)); end
432
+ def get_options_from_invocations(group_options, base_options); end
433
+ def handle_argument_error(command, error, _args, arity); end
434
+ def help(shell); end
435
+ def invocation_blocks; end
436
+ def invocations; end
437
+ def invoke(*names, &block); end
438
+ def invoke_from_option(*names, &block); end
439
+ def printable_commands(*_arg0); end
440
+ def printable_tasks(*_arg0); end
441
+ def remove_invocation(*names); end
442
+
443
+ protected
444
+
445
+ def banner; end
446
+ def baseclass; end
447
+ def create_command(meth); end
448
+ def create_task(meth); end
449
+ def dispatch(command, given_args, given_opts, config); end
450
+ def self_command; end
451
+ def self_task; end
452
+ end
453
+ end
454
+
455
+ Thor::HELP_MAPPINGS = T.let(T.unsafe(nil), Array)
456
+
457
+ class Thor::HiddenCommand < ::Thor::Command
458
+ def hidden?; end
459
+ end
460
+
461
+ Thor::HiddenTask = Thor::HiddenCommand
462
+
463
+ module Thor::Invocation
464
+ mixes_in_class_methods ::Thor::Invocation::ClassMethods
465
+
466
+ def initialize(args = T.unsafe(nil), options = T.unsafe(nil), config = T.unsafe(nil), &block); end
467
+
468
+ def current_command_chain; end
469
+ def invoke(name = T.unsafe(nil), *args); end
470
+ def invoke_all; end
471
+ def invoke_command(command, *args); end
472
+ def invoke_task(command, *args); end
473
+ def invoke_with_padding(*args); end
474
+
475
+ protected
476
+
477
+ def _parse_initialization_options(args, opts, config); end
478
+ def _retrieve_class_and_command(name, sent_command = T.unsafe(nil)); end
479
+ def _retrieve_class_and_task(name, sent_command = T.unsafe(nil)); end
480
+ def _shared_configuration; end
481
+
482
+ class << self
483
+ def included(base); end
484
+ end
485
+ end
486
+
487
+ module Thor::Invocation::ClassMethods
488
+ def prepare_for_invocation(key, name); end
489
+ end
490
+
491
+ class Thor::InvocationError < ::Thor::Error; end
492
+
493
+ module Thor::LineEditor
494
+ class << self
495
+ def best_available; end
496
+ def readline(prompt, options = T.unsafe(nil)); end
497
+ end
498
+ end
499
+
500
+ class Thor::LineEditor::Basic
501
+ def initialize(prompt, options); end
502
+
503
+ def options; end
504
+ def prompt; end
505
+ def readline; end
506
+
507
+ private
508
+
509
+ def echo?; end
510
+ def get_input; end
511
+
512
+ class << self
513
+ def available?; end
514
+ end
515
+ end
516
+
517
+ class Thor::LineEditor::Readline < ::Thor::LineEditor::Basic
518
+ def readline; end
519
+
520
+ private
521
+
522
+ def add_to_history?; end
523
+ def completion_options; end
524
+ def completion_proc; end
525
+ def use_path_completion?; end
526
+
527
+ class << self
528
+ def available?; end
529
+ end
530
+ end
531
+
532
+ class Thor::LineEditor::Readline::PathCompletion
533
+ def initialize(text); end
534
+
535
+ def matches; end
536
+
537
+ private
538
+
539
+ def absolute_matches; end
540
+ def base_path; end
541
+ def glob_pattern; end
542
+ def relative_matches; end
543
+ def text; end
544
+ end
545
+
546
+ class Thor::MalformattedArgumentError < ::Thor::InvocationError; end
547
+
548
+ class Thor::NestedContext
549
+ def initialize; end
550
+
551
+ def enter; end
552
+ def entered?; end
553
+
554
+ private
555
+
556
+ def pop; end
557
+ def push; end
558
+ end
559
+
560
+ class Thor::NoKwargSpellChecker < ::DidYouMean::SpellChecker
561
+ def initialize(dictionary); end
562
+ end
563
+
564
+ class Thor::Option < ::Thor::Argument
565
+ def initialize(name, options = T.unsafe(nil)); end
566
+
567
+ def aliases; end
568
+ def array?; end
569
+ def boolean?; end
570
+ def group; end
571
+ def hash?; end
572
+ def hide; end
573
+ def human_name; end
574
+ def lazy_default; end
575
+ def numeric?; end
576
+ def repeatable; end
577
+ def string?; end
578
+ def switch_name; end
579
+ def usage(padding = T.unsafe(nil)); end
580
+
581
+ protected
582
+
583
+ def dasherize(str); end
584
+ def dasherized?; end
585
+ def undasherize(str); end
586
+ def validate!; end
587
+ def validate_default_type!; end
588
+
589
+ class << self
590
+ def parse(key, value); end
591
+ end
592
+ end
593
+
594
+ Thor::Option::VALID_TYPES = T.let(T.unsafe(nil), Array)
595
+
596
+ class Thor::Options < ::Thor::Arguments
597
+ def initialize(hash_options = T.unsafe(nil), defaults = T.unsafe(nil), stop_on_unknown = T.unsafe(nil), disable_required_check = T.unsafe(nil)); end
598
+
599
+ def check_unknown!; end
600
+ def parse(args); end
601
+ def peek; end
602
+ def remaining; end
603
+
604
+ protected
605
+
606
+ def assign_result!(option, result); end
607
+ def current_is_switch?; end
608
+ def current_is_switch_formatted?; end
609
+ def current_is_value?; end
610
+ def normalize_switch(arg); end
611
+ def parse_boolean(switch); end
612
+ def parse_peek(switch, option); end
613
+ def parsing_options?; end
614
+ def switch?(arg); end
615
+ def switch_option(arg); end
616
+
617
+ class << self
618
+ def to_switches(options); end
619
+ end
620
+ end
621
+
622
+ Thor::Options::EQ_RE = T.let(T.unsafe(nil), Regexp)
623
+ Thor::Options::LONG_RE = T.let(T.unsafe(nil), Regexp)
624
+ Thor::Options::OPTS_END = T.let(T.unsafe(nil), String)
625
+ Thor::Options::SHORT_NUM = T.let(T.unsafe(nil), Regexp)
626
+ Thor::Options::SHORT_RE = T.let(T.unsafe(nil), Regexp)
627
+ Thor::Options::SHORT_SQ_RE = T.let(T.unsafe(nil), Regexp)
628
+
629
+ module Thor::RakeCompat
630
+ include ::FileUtils::StreamUtils_
631
+ include ::FileUtils
632
+ include ::Rake::FileUtilsExt
633
+ include ::Rake::DSL
634
+
635
+ class << self
636
+ def included(base); end
637
+ def rake_classes; end
638
+ end
639
+ end
640
+
641
+ class Thor::RequiredArgumentMissingError < ::Thor::InvocationError; end
642
+ module Thor::Sandbox; end
643
+
644
+ module Thor::Shell
645
+ def initialize(args = T.unsafe(nil), options = T.unsafe(nil), config = T.unsafe(nil)); end
646
+
647
+ def ask(*args, &block); end
648
+ def error(*args, &block); end
649
+ def file_collision(*args, &block); end
650
+ def no?(*args, &block); end
651
+ def print_in_columns(*args, &block); end
652
+ def print_table(*args, &block); end
653
+ def print_wrapped(*args, &block); end
654
+ def say(*args, &block); end
655
+ def say_status(*args, &block); end
656
+ def set_color(*args, &block); end
657
+ def shell; end
658
+ def shell=(_arg0); end
659
+ def terminal_width(*args, &block); end
660
+ def with_padding; end
661
+ def yes?(*args, &block); end
662
+
663
+ protected
664
+
665
+ def _shared_configuration; end
666
+ end
667
+
668
+ class Thor::Shell::Basic
669
+ def initialize; end
670
+
671
+ def ask(statement, *args); end
672
+ def base; end
673
+ def base=(_arg0); end
674
+ def error(statement); end
675
+ def file_collision(destination); end
676
+ def indent(count = T.unsafe(nil)); end
677
+ def mute; end
678
+ def mute?; end
679
+ def no?(statement, color = T.unsafe(nil)); end
680
+ def padding; end
681
+ def padding=(value); end
682
+ def print_in_columns(array); end
683
+ def print_table(array, options = T.unsafe(nil)); end
684
+ def print_wrapped(message, options = T.unsafe(nil)); end
685
+ def say(message = T.unsafe(nil), color = T.unsafe(nil), force_new_line = T.unsafe(nil)); end
686
+ def say_status(status, message, log_status = T.unsafe(nil)); end
687
+ def set_color(string, *_arg1); end
688
+ def terminal_width; end
689
+ def yes?(statement, color = T.unsafe(nil)); end
690
+
691
+ protected
692
+
693
+ def answer_match(possibilities, answer, case_insensitive); end
694
+ def as_unicode; end
695
+ def ask_filtered(statement, color, options); end
696
+ def ask_simply(statement, color, options); end
697
+ def can_display_colors?; end
698
+ def dynamic_width; end
699
+ def dynamic_width_stty; end
700
+ def dynamic_width_tput; end
701
+ def file_collision_help; end
702
+ def git_merge_tool; end
703
+ def is?(value); end
704
+ def lookup_color(color); end
705
+ def merge(destination, content); end
706
+ def merge_tool; end
707
+ def prepare_message(message, *color); end
708
+ def quiet?; end
709
+ def show_diff(destination, content); end
710
+ def stderr; end
711
+ def stdout; end
712
+ def truncate(string, width); end
713
+ def unix?; end
714
+ end
715
+
716
+ Thor::Shell::Basic::DEFAULT_TERMINAL_WIDTH = T.let(T.unsafe(nil), Integer)
717
+
718
+ class Thor::Shell::Color < ::Thor::Shell::Basic
719
+ def set_color(string, *colors); end
720
+
721
+ protected
722
+
723
+ def are_colors_disabled?; end
724
+ def are_colors_supported?; end
725
+ def can_display_colors?; end
726
+ def diff_lcs_loaded?; end
727
+ def output_diff_line(diff); end
728
+ def show_diff(destination, content); end
729
+ end
730
+
731
+ Thor::Shell::Color::BLACK = T.let(T.unsafe(nil), String)
732
+ Thor::Shell::Color::BLUE = T.let(T.unsafe(nil), String)
733
+ Thor::Shell::Color::BOLD = T.let(T.unsafe(nil), String)
734
+ Thor::Shell::Color::CLEAR = T.let(T.unsafe(nil), String)
735
+ Thor::Shell::Color::CYAN = T.let(T.unsafe(nil), String)
736
+ Thor::Shell::Color::GREEN = T.let(T.unsafe(nil), String)
737
+ Thor::Shell::Color::MAGENTA = T.let(T.unsafe(nil), String)
738
+ Thor::Shell::Color::ON_BLACK = T.let(T.unsafe(nil), String)
739
+ Thor::Shell::Color::ON_BLUE = T.let(T.unsafe(nil), String)
740
+ Thor::Shell::Color::ON_CYAN = T.let(T.unsafe(nil), String)
741
+ Thor::Shell::Color::ON_GREEN = T.let(T.unsafe(nil), String)
742
+ Thor::Shell::Color::ON_MAGENTA = T.let(T.unsafe(nil), String)
743
+ Thor::Shell::Color::ON_RED = T.let(T.unsafe(nil), String)
744
+ Thor::Shell::Color::ON_WHITE = T.let(T.unsafe(nil), String)
745
+ Thor::Shell::Color::ON_YELLOW = T.let(T.unsafe(nil), String)
746
+ Thor::Shell::Color::RED = T.let(T.unsafe(nil), String)
747
+ Thor::Shell::Color::WHITE = T.let(T.unsafe(nil), String)
748
+ Thor::Shell::Color::YELLOW = T.let(T.unsafe(nil), String)
749
+
750
+ class Thor::Shell::HTML < ::Thor::Shell::Basic
751
+ def ask(statement, color = T.unsafe(nil)); end
752
+ def set_color(string, *colors); end
753
+
754
+ protected
755
+
756
+ def can_display_colors?; end
757
+ def diff_lcs_loaded?; end
758
+ def output_diff_line(diff); end
759
+ def show_diff(destination, content); end
760
+ end
761
+
762
+ Thor::Shell::HTML::BLACK = T.let(T.unsafe(nil), String)
763
+ Thor::Shell::HTML::BLUE = T.let(T.unsafe(nil), String)
764
+ Thor::Shell::HTML::BOLD = T.let(T.unsafe(nil), String)
765
+ Thor::Shell::HTML::CYAN = T.let(T.unsafe(nil), String)
766
+ Thor::Shell::HTML::GREEN = T.let(T.unsafe(nil), String)
767
+ Thor::Shell::HTML::MAGENTA = T.let(T.unsafe(nil), String)
768
+ Thor::Shell::HTML::ON_BLACK = T.let(T.unsafe(nil), String)
769
+ Thor::Shell::HTML::ON_BLUE = T.let(T.unsafe(nil), String)
770
+ Thor::Shell::HTML::ON_CYAN = T.let(T.unsafe(nil), String)
771
+ Thor::Shell::HTML::ON_GREEN = T.let(T.unsafe(nil), String)
772
+ Thor::Shell::HTML::ON_MAGENTA = T.let(T.unsafe(nil), String)
773
+ Thor::Shell::HTML::ON_RED = T.let(T.unsafe(nil), String)
774
+ Thor::Shell::HTML::ON_WHITE = T.let(T.unsafe(nil), String)
775
+ Thor::Shell::HTML::ON_YELLOW = T.let(T.unsafe(nil), String)
776
+ Thor::Shell::HTML::RED = T.let(T.unsafe(nil), String)
777
+ Thor::Shell::HTML::WHITE = T.let(T.unsafe(nil), String)
778
+ Thor::Shell::HTML::YELLOW = T.let(T.unsafe(nil), String)
779
+ Thor::Shell::SHELL_DELEGATED_METHODS = T.let(T.unsafe(nil), Array)
780
+ Thor::TEMPLATE_EXTNAME = T.let(T.unsafe(nil), String)
781
+ Thor::THOR_RESERVED_WORDS = T.let(T.unsafe(nil), Array)
782
+ Thor::Task = Thor::Command
783
+
784
+ class Thor::UndefinedCommandError < ::Thor::Error
785
+ include ::DidYouMean::Correctable
786
+
787
+ def initialize(command, all_commands, namespace); end
788
+
789
+ def all_commands; end
790
+ def command; end
791
+ end
792
+
793
+ class Thor::UndefinedCommandError::SpellChecker
794
+ def initialize(error); end
795
+
796
+ def corrections; end
797
+ def error; end
798
+ def spell_checker; end
799
+ end
800
+
801
+ Thor::UndefinedTaskError = Thor::UndefinedCommandError
802
+
803
+ class Thor::UnknownArgumentError < ::Thor::Error
804
+ include ::DidYouMean::Correctable
805
+
806
+ def initialize(switches, unknown); end
807
+
808
+ def switches; end
809
+ def unknown; end
810
+ end
811
+
812
+ class Thor::UnknownArgumentError::SpellChecker
813
+ def initialize(error); end
814
+
815
+ def corrections; end
816
+ def error; end
817
+ def spell_checker; end
818
+ end
819
+
820
+ module Thor::Util
821
+ class << self
822
+ def camel_case(str); end
823
+ def escape_globs(path); end
824
+ def escape_html(string); end
825
+ def find_by_namespace(namespace); end
826
+ def find_class_and_command_by_namespace(namespace, fallback = T.unsafe(nil)); end
827
+ def find_class_and_task_by_namespace(namespace, fallback = T.unsafe(nil)); end
828
+ def globs_for(path); end
829
+ def load_thorfile(path, content = T.unsafe(nil), debug = T.unsafe(nil)); end
830
+ def namespace_from_thor_class(constant); end
831
+ def namespaces_in_content(contents, file = T.unsafe(nil)); end
832
+ def ruby_command; end
833
+ def snake_case(str); end
834
+ def thor_classes_in(klass); end
835
+ def thor_root; end
836
+ def thor_root_glob; end
837
+ def user_home; end
838
+ end
839
+ end