danger-packwerk 0.7.0 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/lib/danger-packwerk/packwerk_wrapper.rb +2 -2
  3. data/lib/danger-packwerk/version.rb +1 -1
  4. data/sorbet/config +1 -0
  5. data/sorbet/rbi/gems/actionview@7.0.4.rbi +11543 -0
  6. data/sorbet/rbi/gems/activesupport@7.0.4.rbi +12959 -0
  7. data/sorbet/rbi/gems/addressable@2.8.1.rbi +1505 -0
  8. data/sorbet/rbi/gems/ast@2.4.2.rbi +522 -0
  9. data/sorbet/rbi/gems/better_html@2.0.1.rbi +286 -0
  10. data/sorbet/rbi/gems/builder@3.2.4.rbi +8 -0
  11. data/sorbet/rbi/gems/claide-plugins@0.9.2.rbi +791 -0
  12. data/sorbet/rbi/gems/claide@1.1.0.rbi +1132 -0
  13. data/sorbet/rbi/gems/coderay@1.1.3.rbi +2256 -0
  14. data/sorbet/rbi/gems/colored2@3.1.2.rbi +130 -0
  15. data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +8695 -0
  16. data/sorbet/rbi/gems/cork@0.3.0.rbi +248 -0
  17. data/sorbet/rbi/gems/crass@1.0.6.rbi +436 -0
  18. data/sorbet/rbi/gems/danger-plugin-api@1.0.0.rbi +8 -0
  19. data/sorbet/rbi/gems/danger@9.0.0.rbi +4722 -0
  20. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +862 -0
  21. data/sorbet/rbi/gems/erubi@1.11.0.rbi +102 -0
  22. data/sorbet/rbi/gems/faraday-em_http@1.0.0.rbi +266 -0
  23. data/sorbet/rbi/gems/faraday-em_synchrony@1.0.0.rbi +209 -0
  24. data/sorbet/rbi/gems/faraday-excon@1.1.0.rbi +212 -0
  25. data/sorbet/rbi/gems/faraday-http-cache@2.4.1.rbi +805 -0
  26. data/sorbet/rbi/gems/faraday-httpclient@1.0.1.rbi +221 -0
  27. data/sorbet/rbi/gems/faraday-multipart@1.0.4.rbi +266 -0
  28. data/sorbet/rbi/gems/faraday-net_http@1.0.1.rbi +216 -0
  29. data/sorbet/rbi/gems/faraday-net_http_persistent@1.2.0.rbi +206 -0
  30. data/sorbet/rbi/gems/faraday-patron@1.0.0.rbi +212 -0
  31. data/sorbet/rbi/gems/faraday-rack@1.0.0.rbi +225 -0
  32. data/sorbet/rbi/gems/faraday-retry@1.0.3.rbi +222 -0
  33. data/sorbet/rbi/gems/faraday@1.10.2.rbi +1862 -0
  34. data/sorbet/rbi/gems/git@1.12.0.rbi +1936 -0
  35. data/sorbet/rbi/gems/i18n@1.12.0.rbi +1643 -0
  36. data/sorbet/rbi/gems/json@2.6.2.rbi +1418 -0
  37. data/sorbet/rbi/gems/kramdown-parser-gfm@1.1.0.rbi +8 -0
  38. data/sorbet/rbi/gems/kramdown@2.4.0.rbi +2168 -0
  39. data/sorbet/rbi/gems/loofah@2.19.0.rbi +646 -0
  40. data/sorbet/rbi/gems/method_source@1.0.0.rbi +199 -0
  41. data/sorbet/rbi/gems/minitest@5.16.3.rbi +997 -0
  42. data/sorbet/rbi/gems/multipart-post@2.2.3.rbi +165 -0
  43. data/sorbet/rbi/gems/nap@1.1.0.rbi +351 -0
  44. data/sorbet/rbi/gems/no_proxy_fix@0.1.2.rbi +8 -0
  45. data/sorbet/rbi/gems/nokogiri@1.13.8.rbi +4916 -0
  46. data/sorbet/rbi/gems/octokit@5.6.1.rbi +8939 -0
  47. data/sorbet/rbi/gems/open4@1.3.4.rbi +8 -0
  48. data/sorbet/rbi/gems/{packwerk@2.1.1.rbi → packwerk@2.2.1.rbi} +602 -51
  49. data/sorbet/rbi/gems/parallel@1.22.1.rbi +163 -0
  50. data/sorbet/rbi/gems/parser@3.1.2.1.rbi +5988 -0
  51. data/sorbet/rbi/gems/pry@0.14.1.rbi +6969 -0
  52. data/sorbet/rbi/gems/public_suffix@5.0.0.rbi +779 -0
  53. data/sorbet/rbi/gems/racc@1.6.0.rbi +92 -0
  54. data/sorbet/rbi/gems/rails-dom-testing@2.0.3.rbi +8 -0
  55. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +493 -0
  56. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +227 -0
  57. data/sorbet/rbi/gems/rake@13.0.6.rbi +1865 -0
  58. data/sorbet/rbi/gems/rbi@0.0.14.rbi +2337 -0
  59. data/sorbet/rbi/gems/rchardet@1.8.0.rbi +587 -0
  60. data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +1851 -0
  61. data/sorbet/rbi/gems/rexml@3.2.5.rbi +3852 -0
  62. data/sorbet/rbi/gems/rspec-core@3.11.0.rbi +7725 -0
  63. data/sorbet/rbi/gems/rspec-expectations@3.11.0.rbi +6201 -0
  64. data/sorbet/rbi/gems/rspec-mocks@3.11.1.rbi +3625 -0
  65. data/sorbet/rbi/gems/rspec-support@3.11.0.rbi +1176 -0
  66. data/sorbet/rbi/gems/rspec@3.11.0.rbi +40 -0
  67. data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +4193 -0
  68. data/sorbet/rbi/gems/rubocop-sorbet@0.6.8.rbi +677 -0
  69. data/sorbet/rbi/gems/rubocop@1.36.0.rbi +37914 -0
  70. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +732 -0
  71. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +8 -0
  72. data/sorbet/rbi/gems/sawyer@0.9.2.rbi +513 -0
  73. data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +326 -0
  74. data/sorbet/rbi/gems/spoom@1.1.11.rbi +1600 -0
  75. data/sorbet/rbi/gems/tapioca@0.8.0.rbi +1959 -0
  76. data/sorbet/rbi/gems/terminal-table@3.0.2.rbi +438 -0
  77. data/sorbet/rbi/gems/thor@1.2.1.rbi +2921 -0
  78. data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +4879 -0
  79. data/sorbet/rbi/gems/unicode-display_width@2.3.0.rbi +27 -0
  80. data/sorbet/rbi/gems/unparser@0.6.5.rbi +2789 -0
  81. data/sorbet/rbi/gems/webrick@1.7.0.rbi +1802 -0
  82. data/sorbet/rbi/gems/yard-sorbet@0.6.1.rbi +288 -0
  83. data/sorbet/rbi/gems/yard@0.9.27.rbi +12668 -0
  84. data/sorbet/rbi/todo.rbi +122 -0
  85. metadata +84 -7
  86. data/sorbet/rbi/gems/danger@8.5.0.rbi +0 -122
@@ -0,0 +1,1865 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `rake` gem.
5
+ # Please instead update this file by running `bin/tapioca gem rake`.
6
+
7
+ # :stopdoc:
8
+ #
9
+ # Some top level Constants.
10
+ FileList = Rake::FileList
11
+
12
+ # --
13
+ # This a FileUtils extension that defines several additional commands to be
14
+ # added to the FileUtils utility functions.
15
+ module FileUtils
16
+ include ::FileUtils::StreamUtils_
17
+ extend ::FileUtils::StreamUtils_
18
+
19
+ # Run a Ruby interpreter with the given arguments.
20
+ #
21
+ # Example:
22
+ # ruby %{-pe '$_.upcase!' <README}
23
+ def ruby(*args, **options, &block); end
24
+
25
+ # Attempt to do a normal file link, but fall back to a copy if the link
26
+ # fails.
27
+ def safe_ln(*args, **options); end
28
+
29
+ # Run the system command +cmd+. If multiple arguments are given the command
30
+ # is run directly (without the shell, same semantics as Kernel::exec and
31
+ # Kernel::system).
32
+ #
33
+ # It is recommended you use the multiple argument form over interpolating
34
+ # user input for both usability and security reasons. With the multiple
35
+ # argument form you can easily process files with spaces or other shell
36
+ # reserved characters in them. With the multiple argument form your rake
37
+ # tasks are not vulnerable to users providing an argument like
38
+ # <code>; rm # -rf /</code>.
39
+ #
40
+ # If a block is given, upon command completion the block is called with an
41
+ # OK flag (true on a zero exit status) and a Process::Status object.
42
+ # Without a block a RuntimeError is raised when the command exits non-zero.
43
+ #
44
+ # Examples:
45
+ #
46
+ # sh 'ls -ltr'
47
+ #
48
+ # sh 'ls', 'file with spaces'
49
+ #
50
+ # # check exit status after command runs
51
+ # sh %{grep pattern file} do |ok, res|
52
+ # if !ok
53
+ # puts "pattern not found (status = #{res.exitstatus})"
54
+ # end
55
+ # end
56
+ def sh(*cmd, &block); end
57
+
58
+ # Split a file path into individual directory names.
59
+ #
60
+ # Example:
61
+ # split_all("a/b/c") => ['a', 'b', 'c']
62
+ def split_all(path); end
63
+
64
+ private
65
+
66
+ def create_shell_runner(cmd); end
67
+ def set_verbose_option(options); end
68
+ def sh_show_command(cmd); end
69
+ end
70
+
71
+ FileUtils::LN_SUPPORTED = T.let(T.unsafe(nil), Array)
72
+
73
+ # Path to the currently running Ruby program
74
+ FileUtils::RUBY = T.let(T.unsafe(nil), String)
75
+
76
+ class Module
77
+ include ::Module::Concerning
78
+
79
+ # Check for an existing method in the current class before extending. If
80
+ # the method already exists, then a warning is printed and the extension is
81
+ # not added. Otherwise the block is yielded and any definitions in the
82
+ # block will take effect.
83
+ #
84
+ # Usage:
85
+ #
86
+ # class String
87
+ # rake_extension("xyz") do
88
+ # def xyz
89
+ # ...
90
+ # end
91
+ # end
92
+ # end
93
+ def rake_extension(method); end
94
+ end
95
+
96
+ Module::DELEGATION_RESERVED_KEYWORDS = T.let(T.unsafe(nil), Array)
97
+ Module::DELEGATION_RESERVED_METHOD_NAMES = T.let(T.unsafe(nil), Set)
98
+ Module::RUBY_RESERVED_KEYWORDS = T.let(T.unsafe(nil), Array)
99
+
100
+ module Rake
101
+ extend ::FileUtils::StreamUtils_
102
+ extend ::FileUtils
103
+ extend ::Rake::FileUtilsExt
104
+
105
+ class << self
106
+ # Add files to the rakelib list
107
+ def add_rakelib(*files); end
108
+
109
+ # Current Rake Application
110
+ def application; end
111
+
112
+ # Set the current Rake application object.
113
+ def application=(app); end
114
+
115
+ # Yield each file or directory component.
116
+ def each_dir_parent(dir); end
117
+
118
+ # Convert Pathname and Pathname-like objects to strings;
119
+ # leave everything else alone
120
+ def from_pathname(path); end
121
+
122
+ # Load a rakefile.
123
+ def load_rakefile(path); end
124
+
125
+ # Return the original directory where the Rake application was started.
126
+ def original_dir; end
127
+
128
+ def suggested_thread_count; end
129
+
130
+ # Make +block_application+ the default rake application inside a block so
131
+ # you can load rakefiles into a different application.
132
+ #
133
+ # This is useful when you want to run rake tasks inside a library without
134
+ # running rake in a sub-shell.
135
+ #
136
+ # Example:
137
+ #
138
+ # Dir.chdir 'other/directory'
139
+ #
140
+ # other_rake = Rake.with_application do |rake|
141
+ # rake.load_rakefile
142
+ # end
143
+ #
144
+ # puts other_rake.tasks
145
+ def with_application(block_application = T.unsafe(nil)); end
146
+ end
147
+ end
148
+
149
+ # Rake main application object. When invoking +rake+ from the
150
+ # command line, a Rake::Application object is created and run.
151
+ class Rake::Application
152
+ include ::Rake::TaskManager
153
+ include ::Rake::TraceOutput
154
+
155
+ # Initialize a Rake::Application object.
156
+ #
157
+ # @return [Application] a new instance of Application
158
+ def initialize; end
159
+
160
+ # Add a file to the list of files to be imported.
161
+ def add_import(fn); end
162
+
163
+ # Add a loader to handle imported files ending in the extension
164
+ # +ext+.
165
+ def add_loader(ext, loader); end
166
+
167
+ # Collect the list of tasks on the command line. If no tasks are
168
+ # given, return a list containing only the default task.
169
+ # Environmental assignments are processed at this time as well.
170
+ #
171
+ # `args` is the list of arguments to peruse to get the list of tasks.
172
+ # It should be the command line that was given to rake, less any
173
+ # recognised command-line options, which OptionParser.parse will
174
+ # have taken care of already.
175
+ def collect_command_line_tasks(args); end
176
+
177
+ # Default task name ("default").
178
+ # (May be overridden by subclasses)
179
+ def default_task_name; end
180
+
181
+ # Warn about deprecated usage.
182
+ #
183
+ # Example:
184
+ # Rake.application.deprecate("import", "Rake.import", caller.first)
185
+ def deprecate(old_usage, new_usage, call_site); end
186
+
187
+ def display_cause_details(ex); end
188
+
189
+ # Display the error message that caused the exception.
190
+ def display_error_message(ex); end
191
+
192
+ def display_exception_backtrace(ex); end
193
+ def display_exception_details(ex); end
194
+ def display_exception_details_seen; end
195
+ def display_exception_message_details(ex); end
196
+
197
+ # Display the tasks and prerequisites
198
+ def display_prerequisites; end
199
+
200
+ # Display the tasks and comments.
201
+ def display_tasks_and_comments; end
202
+
203
+ # Calculate the dynamic width of the
204
+ def dynamic_width; end
205
+
206
+ def dynamic_width_stty; end
207
+ def dynamic_width_tput; end
208
+
209
+ # Exit the program because of an unhandled exception.
210
+ # (may be overridden by subclasses)
211
+ def exit_because_of_exception(ex); end
212
+
213
+ def find_rakefile_location; end
214
+
215
+ # Read and handle the command line options. Returns the command line
216
+ # arguments that we didn't understand, which should (in theory) be just
217
+ # task names and env vars.
218
+ def handle_options(argv); end
219
+
220
+ # @return [Boolean]
221
+ def has_cause?(ex); end
222
+
223
+ # True if one of the files in RAKEFILES is in the current directory.
224
+ # If a match is found, it is copied into @rakefile.
225
+ def have_rakefile; end
226
+
227
+ # Initialize the command line parameters and app name.
228
+ def init(app_name = T.unsafe(nil), argv = T.unsafe(nil)); end
229
+
230
+ # Invokes a task with arguments that are extracted from +task_string+
231
+ def invoke_task(task_string); end
232
+
233
+ # Load the pending list of imported files.
234
+ def load_imports; end
235
+
236
+ # Find the rakefile and then load it and any pending imports.
237
+ def load_rakefile; end
238
+
239
+ # The name of the application (typically 'rake')
240
+ def name; end
241
+
242
+ # Application options from the command line
243
+ def options; end
244
+
245
+ # The original directory where rake was invoked.
246
+ def original_dir; end
247
+
248
+ def parse_task_string(string); end
249
+ def print_rakefile_directory(location); end
250
+
251
+ # Similar to the regular Ruby +require+ command, but will check
252
+ # for *.rake files in addition to *.rb files.
253
+ def rake_require(file_name, paths = T.unsafe(nil), loaded = T.unsafe(nil)); end
254
+
255
+ # Name of the actual rakefile used.
256
+ def rakefile; end
257
+
258
+ def rakefile_location(backtrace = T.unsafe(nil)); end
259
+ def raw_load_rakefile; end
260
+
261
+ # Run the Rake application. The run method performs the following
262
+ # three steps:
263
+ #
264
+ # * Initialize the command line options (+init+).
265
+ # * Define the tasks (+load_rakefile+).
266
+ # * Run the top level tasks (+top_level+).
267
+ #
268
+ # If you wish to build a custom rake command, you should call
269
+ # +init+ on your application. Then define any tasks. Finally,
270
+ # call +top_level+ to run your top level tasks.
271
+ def run(argv = T.unsafe(nil)); end
272
+
273
+ # Run the given block with the thread startup and shutdown.
274
+ def run_with_threads; end
275
+
276
+ def set_default_options; end
277
+
278
+ # Provide standard exception handling for the given block.
279
+ def standard_exception_handling; end
280
+
281
+ # A list of all the standard options used in rake, suitable for
282
+ # passing to OptionParser.
283
+ def standard_rake_options; end
284
+
285
+ # The directory path containing the system wide rakefiles.
286
+ def system_dir; end
287
+
288
+ # Number of columns on the terminal
289
+ def terminal_columns; end
290
+
291
+ # Number of columns on the terminal
292
+ def terminal_columns=(_arg0); end
293
+
294
+ def terminal_width; end
295
+
296
+ # Return the thread pool used for multithreaded processing.
297
+ def thread_pool; end
298
+
299
+ # Run the top level tasks of a Rake application.
300
+ def top_level; end
301
+
302
+ # List of the top level task names (task names from the command line).
303
+ def top_level_tasks; end
304
+
305
+ def trace(*strings); end
306
+ def truncate(string, width); end
307
+
308
+ # We will truncate output if we are outputting to a TTY or if we've been
309
+ # given an explicit column width to honor
310
+ #
311
+ # @return [Boolean]
312
+ def truncate_output?; end
313
+
314
+ # Override the detected TTY output state (mostly for testing)
315
+ def tty_output=(_arg0); end
316
+
317
+ # True if we are outputting to TTY, false otherwise
318
+ #
319
+ # @return [Boolean]
320
+ def tty_output?; end
321
+
322
+ # @return [Boolean]
323
+ def unix?; end
324
+
325
+ # @return [Boolean]
326
+ def windows?; end
327
+
328
+ private
329
+
330
+ def glob(path, &block); end
331
+
332
+ # Does the exception have a task invocation chain?
333
+ #
334
+ # @return [Boolean]
335
+ def has_chain?(exception); end
336
+
337
+ def select_tasks_to_show(options, show_tasks, value); end
338
+ def select_trace_output(options, trace_option, value); end
339
+ def sort_options(options); end
340
+ def standard_system_dir; end
341
+ end
342
+
343
+ Rake::Application::DEFAULT_RAKEFILES = T.let(T.unsafe(nil), Array)
344
+
345
+ module Rake::Backtrace
346
+ class << self
347
+ def collapse(backtrace); end
348
+ end
349
+ end
350
+
351
+ Rake::Backtrace::SUPPRESSED_PATHS = T.let(T.unsafe(nil), Array)
352
+ Rake::Backtrace::SUPPRESSED_PATHS_RE = T.let(T.unsafe(nil), String)
353
+ Rake::Backtrace::SUPPRESS_PATTERN = T.let(T.unsafe(nil), Regexp)
354
+ Rake::Backtrace::SYS_KEYS = T.let(T.unsafe(nil), Array)
355
+ Rake::Backtrace::SYS_PATHS = T.let(T.unsafe(nil), Array)
356
+
357
+ # Mixin for creating easily cloned objects.
358
+ module Rake::Cloneable
359
+ private
360
+
361
+ # The hook that is invoked by 'clone' and 'dup' methods.
362
+ def initialize_copy(source); end
363
+ end
364
+
365
+ class Rake::CommandLineOptionError < ::StandardError; end
366
+
367
+ # Based on a script at:
368
+ # http://stackoverflow.com/questions/891537/ruby-detect-number-of-cpus-installed
369
+ class Rake::CpuCounter
370
+ def count; end
371
+ def count_with_default(default = T.unsafe(nil)); end
372
+
373
+ class << self
374
+ def count; end
375
+ end
376
+ end
377
+
378
+ # DSL is a module that provides #task, #desc, #namespace, etc. Use this
379
+ # when you'd like to use rake outside the top level scope.
380
+ #
381
+ # For a Rakefile you run from the command line this module is automatically
382
+ # included.
383
+ module Rake::DSL
384
+ include ::FileUtils::StreamUtils_
385
+ include ::FileUtils
386
+ include ::Rake::FileUtilsExt
387
+
388
+ private
389
+
390
+ # Describes the next rake task. Duplicate descriptions are discarded.
391
+ # Descriptions are shown with <code>rake -T</code> (up to the first
392
+ # sentence) and <code>rake -D</code> (the entire description).
393
+ #
394
+ # Example:
395
+ # desc "Run the Unit Tests"
396
+ # task test: [:build]
397
+ # # ... run tests
398
+ # end
399
+ def desc(description); end
400
+
401
+ # Declare a set of files tasks to create the given directories on
402
+ # demand.
403
+ #
404
+ # Example:
405
+ # directory "testdata/doc"
406
+ def directory(*args, &block); end
407
+
408
+ # Declare a file task.
409
+ #
410
+ # Example:
411
+ # file "config.cfg" => ["config.template"] do
412
+ # open("config.cfg", "w") do |outfile|
413
+ # open("config.template") do |infile|
414
+ # while line = infile.gets
415
+ # outfile.puts line
416
+ # end
417
+ # end
418
+ # end
419
+ # end
420
+ def file(*args, &block); end
421
+
422
+ # Declare a file creation task.
423
+ # (Mainly used for the directory command).
424
+ def file_create(*args, &block); end
425
+
426
+ # Import the partial Rakefiles +fn+. Imported files are loaded
427
+ # _after_ the current file is completely loaded. This allows the
428
+ # import statement to appear anywhere in the importing file, and yet
429
+ # allowing the imported files to depend on objects defined in the
430
+ # importing file.
431
+ #
432
+ # A common use of the import statement is to include files
433
+ # containing dependency declarations.
434
+ #
435
+ # See also the --rakelibdir command line option.
436
+ #
437
+ # Example:
438
+ # import ".depend", "my_rules"
439
+ def import(*fns); end
440
+
441
+ # Declare a task that performs its prerequisites in
442
+ # parallel. Multitasks does *not* guarantee that its prerequisites
443
+ # will execute in any given order (which is obvious when you think
444
+ # about it)
445
+ #
446
+ # Example:
447
+ # multitask deploy: %w[deploy_gem deploy_rdoc]
448
+ def multitask(*args, &block); end
449
+
450
+ # Create a new rake namespace and use it for evaluating the given
451
+ # block. Returns a NameSpace object that can be used to lookup
452
+ # tasks defined in the namespace.
453
+ #
454
+ # Example:
455
+ #
456
+ # ns = namespace "nested" do
457
+ # # the "nested:run" task
458
+ # task :run
459
+ # end
460
+ # task_run = ns[:run] # find :run in the given namespace.
461
+ #
462
+ # Tasks can also be defined in a namespace by using a ":" in the task
463
+ # name:
464
+ #
465
+ # task "nested:test" do
466
+ # # ...
467
+ # end
468
+ def namespace(name = T.unsafe(nil), &block); end
469
+
470
+ # Declare a rule for auto-tasks.
471
+ #
472
+ # Example:
473
+ # rule '.o' => '.c' do |t|
474
+ # sh 'cc', '-o', t.name, t.source
475
+ # end
476
+ def rule(*args, &block); end
477
+
478
+ # :call-seq:
479
+ # task(task_name)
480
+ # task(task_name: dependencies)
481
+ # task(task_name, arguments => dependencies)
482
+ #
483
+ # Declare a basic task. The +task_name+ is always the first argument. If
484
+ # the task name contains a ":" it is defined in that namespace.
485
+ #
486
+ # The +dependencies+ may be a single task name or an Array of task names.
487
+ # The +argument+ (a single name) or +arguments+ (an Array of names) define
488
+ # the arguments provided to the task.
489
+ #
490
+ # The task, argument and dependency names may be either symbols or
491
+ # strings.
492
+ #
493
+ # A task with a single dependency:
494
+ #
495
+ # task clobber: %w[clean] do
496
+ # rm_rf "html"
497
+ # end
498
+ #
499
+ # A task with an argument and a dependency:
500
+ #
501
+ # task :package, [:version] => :test do |t, args|
502
+ # # ...
503
+ # end
504
+ #
505
+ # To invoke this task from the command line:
506
+ #
507
+ # $ rake package[1.2.3]
508
+ def task(*args, &block); end
509
+ end
510
+
511
+ # Default Rakefile loader used by +import+.
512
+ class Rake::DefaultLoader
513
+ # Loads a rakefile into the current application from +fn+
514
+ def load(fn); end
515
+ end
516
+
517
+ Rake::EARLY = T.let(T.unsafe(nil), Rake::EarlyTime)
518
+ Rake::EMPTY_TASK_ARGS = T.let(T.unsafe(nil), Rake::TaskArguments)
519
+
520
+ # EarlyTime is a fake timestamp that occurs _before_ any other time value.
521
+ class Rake::EarlyTime
522
+ include ::Comparable
523
+ include ::Singleton
524
+ extend ::Singleton::SingletonClassMethods
525
+
526
+ # The EarlyTime always comes before +other+!
527
+ def <=>(other); end
528
+
529
+ def to_s; end
530
+ end
531
+
532
+ # A FileCreationTask is a file task that when used as a dependency will be
533
+ # needed if and only if the file has not been created. Once created, it is
534
+ # not re-triggered if any of its dependencies are newer, nor does trigger
535
+ # any rebuilds of tasks that depend on it whenever it is updated.
536
+ class Rake::FileCreationTask < ::Rake::FileTask
537
+ # Is this file task needed? Yes if it doesn't exist.
538
+ #
539
+ # @return [Boolean]
540
+ def needed?; end
541
+
542
+ # Time stamp for file creation task. This time stamp is earlier
543
+ # than any other time stamp.
544
+ def timestamp; end
545
+ end
546
+
547
+ # A FileList is essentially an array with a few helper methods defined to
548
+ # make file manipulation a bit easier.
549
+ #
550
+ # FileLists are lazy. When given a list of glob patterns for possible files
551
+ # to be included in the file list, instead of searching the file structures
552
+ # to find the files, a FileList holds the pattern for latter use.
553
+ #
554
+ # This allows us to define a number of FileList to match any number of
555
+ # files, but only search out the actual files when then FileList itself is
556
+ # actually used. The key is that the first time an element of the
557
+ # FileList/Array is requested, the pending patterns are resolved into a real
558
+ # list of file names.
559
+ class Rake::FileList
560
+ include ::Rake::Cloneable
561
+
562
+ # Create a file list from the globbable patterns given. If you wish to
563
+ # perform multiple includes or excludes at object build time, use the
564
+ # "yield self" pattern.
565
+ #
566
+ # Example:
567
+ # file_list = FileList.new('lib/**/*.rb', 'test/test*.rb')
568
+ #
569
+ # pkg_files = FileList.new('lib/**/*') do |fl|
570
+ # fl.exclude(/\bCVS\b/)
571
+ # end
572
+ #
573
+ # @return [FileList] a new instance of FileList
574
+ # @yield [_self]
575
+ # @yieldparam _self [Rake::FileList] the object that the method was called on
576
+ def initialize(*patterns); end
577
+
578
+ def &(*args, &block); end
579
+
580
+ # Redefine * to return either a string or a new file list.
581
+ def *(other); end
582
+
583
+ def +(*args, &block); end
584
+ def -(*args, &block); end
585
+ def <<(obj); end
586
+ def <=>(*args, &block); end
587
+
588
+ # A FileList is equal through array equality.
589
+ def ==(array); end
590
+
591
+ def [](*args, &block); end
592
+ def []=(*args, &block); end
593
+
594
+ # Add file names defined by glob patterns to the file list. If an array
595
+ # is given, add each element of the array.
596
+ #
597
+ # Example:
598
+ # file_list.include("*.java", "*.cfg")
599
+ # file_list.include %w( math.c lib.h *.o )
600
+ def add(*filenames); end
601
+
602
+ def all?(*args, &block); end
603
+ def any?(*args, &block); end
604
+ def append(*args, &block); end
605
+ def assoc(*args, &block); end
606
+ def at(*args, &block); end
607
+ def bsearch(*args, &block); end
608
+ def bsearch_index(*args, &block); end
609
+ def chain(*args, &block); end
610
+ def chunk(*args, &block); end
611
+ def chunk_while(*args, &block); end
612
+ def clear(*args, &block); end
613
+
614
+ # Clear all the exclude patterns so that we exclude nothing.
615
+ def clear_exclude; end
616
+
617
+ def collect(*args, &block); end
618
+ def collect!(*args, &block); end
619
+ def collect_concat(*args, &block); end
620
+ def combination(*args, &block); end
621
+ def compact(*args, &block); end
622
+ def compact!(*args, &block); end
623
+ def concat(*args, &block); end
624
+ def count(*args, &block); end
625
+ def cycle(*args, &block); end
626
+ def deconstruct(*args, &block); end
627
+ def delete(*args, &block); end
628
+ def delete_at(*args, &block); end
629
+ def delete_if(*args, &block); end
630
+ def detect(*args, &block); end
631
+ def difference(*args, &block); end
632
+ def dig(*args, &block); end
633
+ def drop(*args, &block); end
634
+ def drop_while(*args, &block); end
635
+ def each(*args, &block); end
636
+ def each_cons(*args, &block); end
637
+ def each_entry(*args, &block); end
638
+ def each_index(*args, &block); end
639
+ def each_slice(*args, &block); end
640
+ def each_with_index(*args, &block); end
641
+ def each_with_object(*args, &block); end
642
+
643
+ # Grep each of the files in the filelist using the given pattern. If a
644
+ # block is given, call the block on each matching line, passing the file
645
+ # name, line number, and the matching line of text. If no block is given,
646
+ # a standard emacs style file:linenumber:line message will be printed to
647
+ # standard out. Returns the number of matched items.
648
+ def egrep(pattern, *options); end
649
+
650
+ def empty?(*args, &block); end
651
+ def entries(*args, &block); end
652
+
653
+ # Register a list of file name patterns that should be excluded from the
654
+ # list. Patterns may be regular expressions, glob patterns or regular
655
+ # strings. In addition, a block given to exclude will remove entries that
656
+ # return true when given to the block.
657
+ #
658
+ # Note that glob patterns are expanded against the file system. If a file
659
+ # is explicitly added to a file list, but does not exist in the file
660
+ # system, then an glob pattern in the exclude list will not exclude the
661
+ # file.
662
+ #
663
+ # Examples:
664
+ # FileList['a.c', 'b.c'].exclude("a.c") => ['b.c']
665
+ # FileList['a.c', 'b.c'].exclude(/^a/) => ['b.c']
666
+ #
667
+ # If "a.c" is a file, then ...
668
+ # FileList['a.c', 'b.c'].exclude("a.*") => ['b.c']
669
+ #
670
+ # If "a.c" is not a file, then ...
671
+ # FileList['a.c', 'b.c'].exclude("a.*") => ['a.c', 'b.c']
672
+ def exclude(*patterns, &block); end
673
+
674
+ # Should the given file name be excluded from the list?
675
+ #
676
+ # NOTE: This method was formerly named "exclude?", but Rails
677
+ # introduced an exclude? method as an array method and setup a
678
+ # conflict with file list. We renamed the method to avoid
679
+ # confusion. If you were using "FileList#exclude?" in your user
680
+ # code, you will need to update.
681
+ #
682
+ # @return [Boolean]
683
+ def excluded_from_list?(fn); end
684
+
685
+ # Return a new file list that only contains file names from the current
686
+ # file list that exist on the file system.
687
+ def existing; end
688
+
689
+ # Modify the current file list so that it contains only file name that
690
+ # exist on the file system.
691
+ def existing!; end
692
+
693
+ # Return a new FileList with <tt>String#ext</tt> method applied to
694
+ # each member of the array.
695
+ #
696
+ # This method is a shortcut for:
697
+ #
698
+ # array.collect { |item| item.ext(newext) }
699
+ #
700
+ # +ext+ is a user added method for the Array class.
701
+ def ext(newext = T.unsafe(nil)); end
702
+
703
+ def fetch(*args, &block); end
704
+ def fill(*args, &block); end
705
+ def filter(*args, &block); end
706
+ def filter!(*args, &block); end
707
+ def filter_map(*args, &block); end
708
+ def find(*args, &block); end
709
+ def find_all(*args, &block); end
710
+ def find_index(*args, &block); end
711
+ def first(*args, &block); end
712
+ def flat_map(*args, &block); end
713
+ def flatten(*args, &block); end
714
+ def flatten!(*args, &block); end
715
+ def grep(*args, &block); end
716
+ def grep_v(*args, &block); end
717
+ def group_by(*args, &block); end
718
+
719
+ # Return a new FileList with the results of running +gsub+ against each
720
+ # element of the original list.
721
+ #
722
+ # Example:
723
+ # FileList['lib/test/file', 'x/y'].gsub(/\//, "\\")
724
+ # => ['lib\\test\\file', 'x\\y']
725
+ def gsub(pat, rep); end
726
+
727
+ # Same as +gsub+ except that the original file list is modified.
728
+ def gsub!(pat, rep); end
729
+
730
+ def import(array); end
731
+
732
+ # Add file names defined by glob patterns to the file list. If an array
733
+ # is given, add each element of the array.
734
+ #
735
+ # Example:
736
+ # file_list.include("*.java", "*.cfg")
737
+ # file_list.include %w( math.c lib.h *.o )
738
+ def include(*filenames); end
739
+
740
+ def include?(*args, &block); end
741
+ def index(*args, &block); end
742
+ def inject(*args, &block); end
743
+ def insert(*args, &block); end
744
+ def inspect(*args, &block); end
745
+ def intersection(*args, &block); end
746
+
747
+ # Lie about our class.
748
+ #
749
+ # @return [Boolean]
750
+ def is_a?(klass); end
751
+
752
+ def join(*args, &block); end
753
+ def keep_if(*args, &block); end
754
+
755
+ # Lie about our class.
756
+ #
757
+ # @return [Boolean]
758
+ def kind_of?(klass); end
759
+
760
+ def last(*args, &block); end
761
+ def lazy(*args, &block); end
762
+ def length(*args, &block); end
763
+ def map(*args, &block); end
764
+ def map!(*args, &block); end
765
+ def max(*args, &block); end
766
+ def max_by(*args, &block); end
767
+ def member?(*args, &block); end
768
+ def min(*args, &block); end
769
+ def min_by(*args, &block); end
770
+ def minmax(*args, &block); end
771
+ def minmax_by(*args, &block); end
772
+ def none?(*args, &block); end
773
+ def one?(*args, &block); end
774
+ def pack(*args, &block); end
775
+
776
+ # FileList version of partition. Needed because the nested arrays should
777
+ # be FileLists in this version.
778
+ def partition(&block); end
779
+
780
+ # Apply the pathmap spec to each of the included file names, returning a
781
+ # new file list with the modified paths. (See String#pathmap for
782
+ # details.)
783
+ def pathmap(spec = T.unsafe(nil), &block); end
784
+
785
+ def permutation(*args, &block); end
786
+ def place(*args, &block); end
787
+ def pop(*args, &block); end
788
+ def prepend(*args, &block); end
789
+ def product(*args, &block); end
790
+ def push(*args, &block); end
791
+ def rassoc(*args, &block); end
792
+ def reduce(*args, &block); end
793
+ def reject(*args, &block); end
794
+ def reject!(*args, &block); end
795
+ def repeated_combination(*args, &block); end
796
+ def repeated_permutation(*args, &block); end
797
+ def replace(*args, &block); end
798
+
799
+ # Resolve all the pending adds now.
800
+ def resolve; end
801
+
802
+ def reverse(*args, &block); end
803
+ def reverse!(*args, &block); end
804
+ def reverse_each(*args, &block); end
805
+ def rindex(*args, &block); end
806
+ def rotate(*args, &block); end
807
+ def rotate!(*args, &block); end
808
+ def sample(*args, &block); end
809
+ def select(*args, &block); end
810
+ def select!(*args, &block); end
811
+ def shelljoin(*args, &block); end
812
+ def shift(*args, &block); end
813
+ def shuffle(*args, &block); end
814
+ def shuffle!(*args, &block); end
815
+ def size(*args, &block); end
816
+ def slice(*args, &block); end
817
+ def slice!(*args, &block); end
818
+ def slice_after(*args, &block); end
819
+ def slice_before(*args, &block); end
820
+ def slice_when(*args, &block); end
821
+ def sort(*args, &block); end
822
+ def sort!(*args, &block); end
823
+ def sort_by(*args, &block); end
824
+ def sort_by!(*args, &block); end
825
+
826
+ # Return a new FileList with the results of running +sub+ against each
827
+ # element of the original list.
828
+ #
829
+ # Example:
830
+ # FileList['a.c', 'b.c'].sub(/\.c$/, '.o') => ['a.o', 'b.o']
831
+ def sub(pat, rep); end
832
+
833
+ # Same as +sub+ except that the original file list is modified.
834
+ def sub!(pat, rep); end
835
+
836
+ def sum(*args, &block); end
837
+ def take(*args, &block); end
838
+ def take_while(*args, &block); end
839
+ def tally(*args, &block); end
840
+
841
+ # Return the internal array object.
842
+ def to_a; end
843
+
844
+ # Return the internal array object.
845
+ def to_ary; end
846
+
847
+ def to_default_s(*args, &block); end
848
+ def to_formatted_s(*args, &block); end
849
+ def to_fs(*args, &block); end
850
+ def to_h(*args, &block); end
851
+
852
+ # Convert a FileList to a string by joining all elements with a space.
853
+ def to_s; end
854
+
855
+ def to_sentence(*args, &block); end
856
+ def to_set(*args, &block); end
857
+ def to_xml(*args, &block); end
858
+ def transpose(*args, &block); end
859
+ def union(*args, &block); end
860
+ def uniq(*args, &block); end
861
+ def uniq!(*args, &block); end
862
+ def unshift(*args, &block); end
863
+ def values_at(*args, &block); end
864
+ def zip(*args, &block); end
865
+ def |(*args, &block); end
866
+
867
+ private
868
+
869
+ # Add matching glob patterns.
870
+ def add_matching(pattern); end
871
+
872
+ def resolve_add(fn); end
873
+ def resolve_exclude; end
874
+
875
+ class << self
876
+ # Create a new file list including the files listed. Similar to:
877
+ #
878
+ # FileList.new(*args)
879
+ def [](*args); end
880
+
881
+ # Get a sorted list of files matching the pattern. This method
882
+ # should be preferred to Dir[pattern] and Dir.glob(pattern) because
883
+ # the files returned are guaranteed to be sorted.
884
+ def glob(pattern, *args); end
885
+ end
886
+ end
887
+
888
+ # List of array methods (that are not in +Object+) that need to be
889
+ # delegated.
890
+ Rake::FileList::ARRAY_METHODS = T.let(T.unsafe(nil), Array)
891
+
892
+ Rake::FileList::DEFAULT_IGNORE_PATTERNS = T.let(T.unsafe(nil), Array)
893
+ Rake::FileList::DEFAULT_IGNORE_PROCS = T.let(T.unsafe(nil), Array)
894
+ Rake::FileList::DELEGATING_METHODS = T.let(T.unsafe(nil), Array)
895
+ Rake::FileList::GLOB_PATTERN = T.let(T.unsafe(nil), Regexp)
896
+
897
+ # List of additional methods that must be delegated.
898
+ Rake::FileList::MUST_DEFINE = T.let(T.unsafe(nil), Array)
899
+
900
+ # List of methods that should not be delegated here (we define special
901
+ # versions of them explicitly below).
902
+ Rake::FileList::MUST_NOT_DEFINE = T.let(T.unsafe(nil), Array)
903
+
904
+ # List of delegated methods that return new array values which need
905
+ # wrapping.
906
+ Rake::FileList::SPECIAL_RETURN = T.let(T.unsafe(nil), Array)
907
+
908
+ # A FileTask is a task that includes time based dependencies. If any of a
909
+ # FileTask's prerequisites have a timestamp that is later than the file
910
+ # represented by this task, then the file must be rebuilt (using the
911
+ # supplied actions).
912
+ class Rake::FileTask < ::Rake::Task
913
+ # Is this file task needed? Yes if it doesn't exist, or if its time stamp
914
+ # is out of date.
915
+ #
916
+ # @return [Boolean]
917
+ def needed?; end
918
+
919
+ # Time stamp for file task.
920
+ def timestamp; end
921
+
922
+ private
923
+
924
+ # Are there any prerequisites with a later time than the given time stamp?
925
+ #
926
+ # @return [Boolean]
927
+ def out_of_date?(stamp); end
928
+
929
+ class << self
930
+ # Apply the scope to the task name according to the rules for this kind
931
+ # of task. File based tasks ignore the scope when creating the name.
932
+ def scope_name(scope, task_name); end
933
+ end
934
+ end
935
+
936
+ # FileUtilsExt provides a custom version of the FileUtils methods
937
+ # that respond to the <tt>verbose</tt> and <tt>nowrite</tt>
938
+ # commands.
939
+ module Rake::FileUtilsExt
940
+ include ::FileUtils::StreamUtils_
941
+ include ::FileUtils
942
+ extend ::FileUtils::StreamUtils_
943
+ extend ::FileUtils
944
+ extend ::Rake::FileUtilsExt
945
+
946
+ def cd(*args, **options, &block); end
947
+ def chdir(*args, **options, &block); end
948
+ def chmod(*args, **options, &block); end
949
+ def chmod_R(*args, **options, &block); end
950
+ def chown(*args, **options, &block); end
951
+ def chown_R(*args, **options, &block); end
952
+ def copy(*args, **options, &block); end
953
+ def cp(*args, **options, &block); end
954
+ def cp_lr(*args, **options, &block); end
955
+ def cp_r(*args, **options, &block); end
956
+ def install(*args, **options, &block); end
957
+ def link(*args, **options, &block); end
958
+ def ln(*args, **options, &block); end
959
+ def ln_s(*args, **options, &block); end
960
+ def ln_sf(*args, **options, &block); end
961
+ def makedirs(*args, **options, &block); end
962
+ def mkdir(*args, **options, &block); end
963
+ def mkdir_p(*args, **options, &block); end
964
+ def mkpath(*args, **options, &block); end
965
+ def move(*args, **options, &block); end
966
+ def mv(*args, **options, &block); end
967
+
968
+ # Get/set the nowrite flag controlling output from the FileUtils
969
+ # utilities. If verbose is true, then the utility method is
970
+ # echoed to standard output.
971
+ #
972
+ # Examples:
973
+ # nowrite # return the current value of the
974
+ # # nowrite flag
975
+ # nowrite(v) # set the nowrite flag to _v_.
976
+ # nowrite(v) { code } # Execute code with the nowrite flag set
977
+ # # temporarily to _v_. Return to the
978
+ # # original value when code is done.
979
+ def nowrite(value = T.unsafe(nil)); end
980
+
981
+ # Check that the options do not contain options not listed in
982
+ # +optdecl+. An ArgumentError exception is thrown if non-declared
983
+ # options are found.
984
+ #
985
+ # @raise [ArgumentError]
986
+ def rake_check_options(options, *optdecl); end
987
+
988
+ # Send the message to the default rake output (which is $stderr).
989
+ def rake_output_message(message); end
990
+
991
+ def remove(*args, **options, &block); end
992
+ def rm(*args, **options, &block); end
993
+ def rm_f(*args, **options, &block); end
994
+ def rm_r(*args, **options, &block); end
995
+ def rm_rf(*args, **options, &block); end
996
+ def rmdir(*args, **options, &block); end
997
+ def rmtree(*args, **options, &block); end
998
+ def safe_unlink(*args, **options, &block); end
999
+ def symlink(*args, **options, &block); end
1000
+ def touch(*args, **options, &block); end
1001
+
1002
+ # Get/set the verbose flag controlling output from the FileUtils
1003
+ # utilities. If verbose is true, then the utility method is
1004
+ # echoed to standard output.
1005
+ #
1006
+ # Examples:
1007
+ # verbose # return the current value of the
1008
+ # # verbose flag
1009
+ # verbose(v) # set the verbose flag to _v_.
1010
+ # verbose(v) { code } # Execute code with the verbose flag set
1011
+ # # temporarily to _v_. Return to the
1012
+ # # original value when code is done.
1013
+ def verbose(value = T.unsafe(nil)); end
1014
+
1015
+ # Use this function to prevent potentially destructive ruby code
1016
+ # from running when the :nowrite flag is set.
1017
+ #
1018
+ # Example:
1019
+ #
1020
+ # when_writing("Building Project") do
1021
+ # project.build
1022
+ # end
1023
+ #
1024
+ # The following code will build the project under normal
1025
+ # conditions. If the nowrite(true) flag is set, then the example
1026
+ # will print:
1027
+ #
1028
+ # DRYRUN: Building Project
1029
+ #
1030
+ # instead of actually building the project.
1031
+ def when_writing(msg = T.unsafe(nil)); end
1032
+
1033
+ class << self
1034
+ # Returns the value of attribute nowrite_flag.
1035
+ def nowrite_flag; end
1036
+
1037
+ # Sets the attribute nowrite_flag
1038
+ #
1039
+ # @param value the value to set the attribute nowrite_flag to.
1040
+ def nowrite_flag=(_arg0); end
1041
+
1042
+ # Returns the value of attribute verbose_flag.
1043
+ def verbose_flag; end
1044
+
1045
+ # Sets the attribute verbose_flag
1046
+ #
1047
+ # @param value the value to set the attribute verbose_flag to.
1048
+ def verbose_flag=(_arg0); end
1049
+ end
1050
+ end
1051
+
1052
+ Rake::FileUtilsExt::DEFAULT = T.let(T.unsafe(nil), Object)
1053
+
1054
+ # InvocationChain tracks the chain of task invocations to detect
1055
+ # circular dependencies.
1056
+ class Rake::InvocationChain < ::Rake::LinkedList
1057
+ # Append an invocation to the chain of invocations. It is an error
1058
+ # if the invocation already listed.
1059
+ def append(invocation); end
1060
+
1061
+ # Is the invocation already in the chain?
1062
+ #
1063
+ # @return [Boolean]
1064
+ def member?(invocation); end
1065
+
1066
+ # Convert to string, ie: TOP => invocation => invocation
1067
+ def to_s; end
1068
+
1069
+ private
1070
+
1071
+ def prefix; end
1072
+
1073
+ class << self
1074
+ # Class level append.
1075
+ def append(invocation, chain); end
1076
+ end
1077
+ end
1078
+
1079
+ Rake::InvocationChain::EMPTY = T.let(T.unsafe(nil), Rake::InvocationChain::EmptyInvocationChain)
1080
+
1081
+ # Null object for an empty chain.
1082
+ class Rake::InvocationChain::EmptyInvocationChain < ::Rake::LinkedList::EmptyLinkedList
1083
+ def append(invocation); end
1084
+
1085
+ # @return [Boolean]
1086
+ def member?(obj); end
1087
+
1088
+ def to_s; end
1089
+ end
1090
+
1091
+ module Rake::InvocationExceptionMixin
1092
+ # Return the invocation chain (list of Rake tasks) that were in
1093
+ # effect when this exception was detected by rake. May be null if
1094
+ # no tasks were active.
1095
+ def chain; end
1096
+
1097
+ # Set the invocation chain in effect when this exception was
1098
+ # detected.
1099
+ def chain=(value); end
1100
+ end
1101
+
1102
+ Rake::LATE = T.let(T.unsafe(nil), Rake::LateTime)
1103
+
1104
+ # LateTime is a fake timestamp that occurs _after_ any other time value.
1105
+ class Rake::LateTime
1106
+ include ::Comparable
1107
+ include ::Singleton
1108
+ extend ::Singleton::SingletonClassMethods
1109
+
1110
+ def <=>(other); end
1111
+ def to_s; end
1112
+ end
1113
+
1114
+ # Polylithic linked list structure used to implement several data
1115
+ # structures in Rake.
1116
+ class Rake::LinkedList
1117
+ include ::Enumerable
1118
+
1119
+ # @return [LinkedList] a new instance of LinkedList
1120
+ def initialize(head, tail = T.unsafe(nil)); end
1121
+
1122
+ # Lists are structurally equivalent.
1123
+ def ==(other); end
1124
+
1125
+ # Polymorphically add a new element to the head of a list. The
1126
+ # type of head node will be the same list type as the tail.
1127
+ def conj(item); end
1128
+
1129
+ # For each item in the list.
1130
+ def each; end
1131
+
1132
+ # Is the list empty?
1133
+ # .make guards against a list being empty making any instantiated LinkedList
1134
+ # object not empty by default
1135
+ # You should consider overriding this method if you implement your own .make method
1136
+ #
1137
+ # @return [Boolean]
1138
+ def empty?; end
1139
+
1140
+ # Returns the value of attribute head.
1141
+ def head; end
1142
+
1143
+ # Same as +to_s+, but with inspected items.
1144
+ def inspect; end
1145
+
1146
+ # Returns the value of attribute tail.
1147
+ def tail; end
1148
+
1149
+ # Convert to string: LL(item, item...)
1150
+ def to_s; end
1151
+
1152
+ class << self
1153
+ # Cons a new head onto the tail list.
1154
+ def cons(head, tail); end
1155
+
1156
+ # The standard empty list class for the given LinkedList class.
1157
+ def empty; end
1158
+
1159
+ # Make a list out of the given arguments. This method is
1160
+ # polymorphic
1161
+ def make(*args); end
1162
+ end
1163
+ end
1164
+
1165
+ Rake::LinkedList::EMPTY = T.let(T.unsafe(nil), Rake::LinkedList::EmptyLinkedList)
1166
+
1167
+ # Represent an empty list, using the Null Object Pattern.
1168
+ #
1169
+ # When inheriting from the LinkedList class, you should implement
1170
+ # a type specific Empty class as well. Make sure you set the class
1171
+ # instance variable @parent to the associated list class (this
1172
+ # allows conj, cons and make to work polymorphically).
1173
+ class Rake::LinkedList::EmptyLinkedList < ::Rake::LinkedList
1174
+ # @return [EmptyLinkedList] a new instance of EmptyLinkedList
1175
+ def initialize; end
1176
+
1177
+ # @return [Boolean]
1178
+ def empty?; end
1179
+
1180
+ class << self
1181
+ def cons(head, tail); end
1182
+ end
1183
+ end
1184
+
1185
+ # Same as a regular task, but the immediate prerequisites are done in
1186
+ # parallel using Ruby threads.
1187
+ class Rake::MultiTask < ::Rake::Task
1188
+ private
1189
+
1190
+ def invoke_prerequisites(task_args, invocation_chain); end
1191
+ end
1192
+
1193
+ # The NameSpace class will lookup task names in the scope defined by a
1194
+ # +namespace+ command.
1195
+ class Rake::NameSpace
1196
+ # Create a namespace lookup object using the given task manager
1197
+ # and the list of scopes.
1198
+ #
1199
+ # @return [NameSpace] a new instance of NameSpace
1200
+ def initialize(task_manager, scope_list); end
1201
+
1202
+ # Lookup a task named +name+ in the namespace.
1203
+ def [](name); end
1204
+
1205
+ # The scope of the namespace (a LinkedList)
1206
+ def scope; end
1207
+
1208
+ # Return the list of tasks defined in this and nested namespaces.
1209
+ def tasks; end
1210
+ end
1211
+
1212
+ # Include PrivateReader to use +private_reader+.
1213
+ module Rake::PrivateReader
1214
+ mixes_in_class_methods ::Rake::PrivateReader::ClassMethods
1215
+
1216
+ class << self
1217
+ def included(base); end
1218
+ end
1219
+ end
1220
+
1221
+ module Rake::PrivateReader::ClassMethods
1222
+ # Declare a list of private accessors
1223
+ def private_reader(*names); end
1224
+ end
1225
+
1226
+ # A Promise object represents a promise to do work (a chore) in the
1227
+ # future. The promise is created with a block and a list of
1228
+ # arguments for the block. Calling value will return the value of
1229
+ # the promised chore.
1230
+ #
1231
+ # Used by ThreadPool.
1232
+ class Rake::Promise
1233
+ # Create a promise to do the chore specified by the block.
1234
+ #
1235
+ # @return [Promise] a new instance of Promise
1236
+ def initialize(args, &block); end
1237
+
1238
+ def recorder; end
1239
+ def recorder=(_arg0); end
1240
+
1241
+ # Return the value of this promise.
1242
+ #
1243
+ # If the promised chore is not yet complete, then do the work
1244
+ # synchronously. We will wait.
1245
+ def value; end
1246
+
1247
+ # If no one else is working this promise, go ahead and do the chore.
1248
+ def work; end
1249
+
1250
+ private
1251
+
1252
+ # Perform the chore promised
1253
+ def chore; end
1254
+
1255
+ # Are we done with the promise
1256
+ #
1257
+ # @return [Boolean]
1258
+ def complete?; end
1259
+
1260
+ # free up these items for the GC
1261
+ def discard; end
1262
+
1263
+ # Did the promise throw an error
1264
+ #
1265
+ # @return [Boolean]
1266
+ def error?; end
1267
+
1268
+ # Do we have a result for the promise
1269
+ #
1270
+ # @return [Boolean]
1271
+ def result?; end
1272
+
1273
+ # Record execution statistics if there is a recorder
1274
+ def stat(*args); end
1275
+ end
1276
+
1277
+ Rake::Promise::NOT_SET = T.let(T.unsafe(nil), Object)
1278
+
1279
+ # Exit status class for times the system just gives us a nil.
1280
+ class Rake::PseudoStatus
1281
+ # @return [PseudoStatus] a new instance of PseudoStatus
1282
+ def initialize(code = T.unsafe(nil)); end
1283
+
1284
+ def >>(n); end
1285
+
1286
+ # @return [Boolean]
1287
+ def exited?; end
1288
+
1289
+ def exitstatus; end
1290
+
1291
+ # @return [Boolean]
1292
+ def stopped?; end
1293
+
1294
+ def to_i; end
1295
+ end
1296
+
1297
+ # Error indicating a recursion overflow error in task selection.
1298
+ class Rake::RuleRecursionOverflowError < ::StandardError
1299
+ # @return [RuleRecursionOverflowError] a new instance of RuleRecursionOverflowError
1300
+ def initialize(*args); end
1301
+
1302
+ def add_target(target); end
1303
+ def message; end
1304
+ end
1305
+
1306
+ class Rake::Scope < ::Rake::LinkedList
1307
+ # Path for the scope.
1308
+ def path; end
1309
+
1310
+ # Path for the scope + the named path.
1311
+ def path_with_task_name(task_name); end
1312
+
1313
+ # Trim +n+ innermost scope levels from the scope. In no case will
1314
+ # this trim beyond the toplevel scope.
1315
+ def trim(n); end
1316
+ end
1317
+
1318
+ # Singleton null object for an empty scope.
1319
+ Rake::Scope::EMPTY = T.let(T.unsafe(nil), Rake::Scope::EmptyScope)
1320
+
1321
+ # Scope lists always end with an EmptyScope object. See Null
1322
+ # Object Pattern)
1323
+ class Rake::Scope::EmptyScope < ::Rake::LinkedList::EmptyLinkedList
1324
+ def path; end
1325
+ def path_with_task_name(task_name); end
1326
+ end
1327
+
1328
+ # A Task is the basic unit of work in a Rakefile. Tasks have associated
1329
+ # actions (possibly more than one) and a list of prerequisites. When
1330
+ # invoked, a task will first ensure that all of its prerequisites have an
1331
+ # opportunity to run and then it will execute its own actions.
1332
+ #
1333
+ # Tasks are not usually created directly using the new method, but rather
1334
+ # use the +file+ and +task+ convenience methods.
1335
+ class Rake::Task
1336
+ # Create a task named +task_name+ with no actions or prerequisites. Use
1337
+ # +enhance+ to add actions and prerequisites.
1338
+ #
1339
+ # @return [Task] a new instance of Task
1340
+ def initialize(task_name, app); end
1341
+
1342
+ # List of actions attached to a task.
1343
+ def actions; end
1344
+
1345
+ # Add a description to the task. The description can consist of an option
1346
+ # argument list (enclosed brackets) and an optional comment.
1347
+ def add_description(description); end
1348
+
1349
+ # List of all unique prerequisite tasks including prerequisite tasks'
1350
+ # prerequisites.
1351
+ # Includes self when cyclic dependencies are found.
1352
+ def all_prerequisite_tasks; end
1353
+
1354
+ # Has this task already been invoked? Already invoked tasks
1355
+ # will be skipped unless you reenable them.
1356
+ def already_invoked; end
1357
+
1358
+ # Application owning this task.
1359
+ def application; end
1360
+
1361
+ # Application owning this task.
1362
+ def application=(_arg0); end
1363
+
1364
+ # Argument description (nil if none).
1365
+ def arg_description; end
1366
+
1367
+ # Name of arguments for this task.
1368
+ def arg_names; end
1369
+
1370
+ # Clear the existing prerequisites, actions, comments, and arguments of a rake task.
1371
+ def clear; end
1372
+
1373
+ # Clear the existing actions on a rake task.
1374
+ def clear_actions; end
1375
+
1376
+ # Clear the existing arguments on a rake task.
1377
+ def clear_args; end
1378
+
1379
+ # Clear the existing comments on a rake task.
1380
+ def clear_comments; end
1381
+
1382
+ # Clear the existing prerequisites of a rake task.
1383
+ def clear_prerequisites; end
1384
+
1385
+ # First line (or sentence) of all comments. Multiple comments are
1386
+ # separated by a "/".
1387
+ def comment; end
1388
+
1389
+ def comment=(comment); end
1390
+
1391
+ # Enhance a task with prerequisites or actions. Returns self.
1392
+ def enhance(deps = T.unsafe(nil), &block); end
1393
+
1394
+ # Execute the actions associated with this task.
1395
+ def execute(args = T.unsafe(nil)); end
1396
+
1397
+ # Full collection of comments. Multiple comments are separated by
1398
+ # newlines.
1399
+ def full_comment; end
1400
+
1401
+ def inspect; end
1402
+
1403
+ # Return a string describing the internal state of a task. Useful for
1404
+ # debugging.
1405
+ def investigation; end
1406
+
1407
+ # Invoke the task if it is needed. Prerequisites are invoked first.
1408
+ def invoke(*args); end
1409
+
1410
+ # Invoke all the prerequisites of a task.
1411
+ def invoke_prerequisites(task_args, invocation_chain); end
1412
+
1413
+ # Invoke all the prerequisites of a task in parallel.
1414
+ def invoke_prerequisites_concurrently(task_args, invocation_chain); end
1415
+
1416
+ # File/Line locations of each of the task definitions for this
1417
+ # task (only valid if the task was defined with the detect
1418
+ # location option set).
1419
+ def locations; end
1420
+
1421
+ # Name of the task, including any namespace qualifiers.
1422
+ def name; end
1423
+
1424
+ # Name of task with argument list description.
1425
+ def name_with_args; end
1426
+
1427
+ # Is this task needed?
1428
+ #
1429
+ # @return [Boolean]
1430
+ def needed?; end
1431
+
1432
+ # List of order only prerequisites for a task.
1433
+ def order_only_prerequisites; end
1434
+
1435
+ # List of prerequisites for a task.
1436
+ def prereqs; end
1437
+
1438
+ # List of prerequisite tasks
1439
+ def prerequisite_tasks; end
1440
+
1441
+ # List of prerequisites for a task.
1442
+ def prerequisites; end
1443
+
1444
+ # Reenable the task, allowing its tasks to be executed if the task
1445
+ # is invoked again.
1446
+ def reenable; end
1447
+
1448
+ # Array of nested namespaces names used for task lookup by this task.
1449
+ def scope; end
1450
+
1451
+ # Set the names of the arguments for this task. +args+ should be
1452
+ # an array of symbols, one for each argument name.
1453
+ def set_arg_names(args); end
1454
+
1455
+ # First source from a rule (nil if no sources)
1456
+ def source; end
1457
+
1458
+ def sources; end
1459
+
1460
+ # List of sources for task.
1461
+ def sources=(_arg0); end
1462
+
1463
+ # Timestamp for this task. Basic tasks return the current time for their
1464
+ # time stamp. Other tasks can be more sophisticated.
1465
+ def timestamp; end
1466
+
1467
+ # Return task name
1468
+ def to_s; end
1469
+
1470
+ # Add order only dependencies.
1471
+ def |(deps); end
1472
+
1473
+ protected
1474
+
1475
+ def collect_prerequisites(seen); end
1476
+
1477
+ # Same as invoke, but explicitly pass a call chain to detect
1478
+ # circular dependencies.
1479
+ #
1480
+ # If multiple tasks depend on this
1481
+ # one in parallel, they will all fail if the first execution of
1482
+ # this task fails.
1483
+ def invoke_with_call_chain(task_args, invocation_chain); end
1484
+
1485
+ private
1486
+
1487
+ def add_chain_to(exception, new_chain); end
1488
+ def add_comment(comment); end
1489
+
1490
+ # Get the first sentence in a string. The sentence is terminated
1491
+ # by the first period, exclamation mark, or the end of the line.
1492
+ # Decimal points do not count as periods.
1493
+ def first_sentence(string); end
1494
+
1495
+ # Format the trace flags for display.
1496
+ def format_trace_flags; end
1497
+
1498
+ def lookup_prerequisite(prerequisite_name); end
1499
+
1500
+ # Transform the list of comments as specified by the block and
1501
+ # join with the separator.
1502
+ def transform_comments(separator, &block); end
1503
+
1504
+ class << self
1505
+ # Return a task with the given name. If the task is not currently
1506
+ # known, try to synthesize one from the defined rules. If no rules are
1507
+ # found, but an existing file matches the task name, assume it is a file
1508
+ # task with no dependencies or actions.
1509
+ def [](task_name); end
1510
+
1511
+ # Clear the task list. This cause rake to immediately forget all the
1512
+ # tasks that have been assigned. (Normally used in the unit tests.)
1513
+ def clear; end
1514
+
1515
+ # Define a rule for synthesizing tasks.
1516
+ def create_rule(*args, &block); end
1517
+
1518
+ # Define a task given +args+ and an option block. If a rule with the
1519
+ # given name already exists, the prerequisites and actions are added to
1520
+ # the existing task. Returns the defined task.
1521
+ def define_task(*args, &block); end
1522
+
1523
+ # Format dependencies parameter to pass to task.
1524
+ def format_deps(deps); end
1525
+
1526
+ # Apply the scope to the task name according to the rules for
1527
+ # this kind of task. Generic tasks will accept the scope as
1528
+ # part of the name.
1529
+ def scope_name(scope, task_name); end
1530
+
1531
+ # TRUE if the task name is already defined.
1532
+ #
1533
+ # @return [Boolean]
1534
+ def task_defined?(task_name); end
1535
+
1536
+ # List of all defined tasks.
1537
+ def tasks; end
1538
+ end
1539
+ end
1540
+
1541
+ # Error indicating an ill-formed task declaration.
1542
+ class Rake::TaskArgumentError < ::ArgumentError; end
1543
+
1544
+ # TaskArguments manage the arguments passed to a task.
1545
+ class Rake::TaskArguments
1546
+ include ::Enumerable
1547
+
1548
+ # Create a TaskArgument object with a list of argument +names+ and a set
1549
+ # of associated +values+. +parent+ is the parent argument object.
1550
+ #
1551
+ # @return [TaskArguments] a new instance of TaskArguments
1552
+ def initialize(names, values, parent = T.unsafe(nil)); end
1553
+
1554
+ # Find an argument value by name or index.
1555
+ def [](index); end
1556
+
1557
+ # Enumerates the arguments and their values
1558
+ def each(&block); end
1559
+
1560
+ # Retrieve the list of values not associated with named arguments
1561
+ def extras; end
1562
+
1563
+ def fetch(*args, &block); end
1564
+
1565
+ # Returns true if +key+ is one of the arguments
1566
+ #
1567
+ # @return [Boolean]
1568
+ def has_key?(key); end
1569
+
1570
+ def inspect; end
1571
+
1572
+ # Returns true if +key+ is one of the arguments
1573
+ #
1574
+ # @return [Boolean]
1575
+ def key?(key); end
1576
+
1577
+ # Returns the value of the given argument via method_missing
1578
+ def method_missing(sym, *args); end
1579
+
1580
+ # Argument names
1581
+ def names; end
1582
+
1583
+ # Create a new argument scope using the prerequisite argument
1584
+ # names.
1585
+ def new_scope(names); end
1586
+
1587
+ # Retrieve the complete array of sequential values
1588
+ def to_a; end
1589
+
1590
+ # Returns a Hash of arguments and their values
1591
+ def to_hash; end
1592
+
1593
+ def to_s; end
1594
+
1595
+ # Extracts the argument values at +keys+
1596
+ def values_at(*keys); end
1597
+
1598
+ # Specify a hash of default values for task arguments. Use the
1599
+ # defaults only if there is no specific value for the given
1600
+ # argument.
1601
+ def with_defaults(defaults); end
1602
+
1603
+ protected
1604
+
1605
+ def lookup(name); end
1606
+ end
1607
+
1608
+ # Base class for Task Libraries.
1609
+ class Rake::TaskLib
1610
+ include ::Rake::Cloneable
1611
+ include ::FileUtils::StreamUtils_
1612
+ include ::FileUtils
1613
+ include ::Rake::FileUtilsExt
1614
+ include ::Rake::DSL
1615
+ end
1616
+
1617
+ # The TaskManager module is a mixin for managing tasks.
1618
+ module Rake::TaskManager
1619
+ def initialize; end
1620
+
1621
+ # Find a matching task for +task_name+.
1622
+ def [](task_name, scopes = T.unsafe(nil)); end
1623
+
1624
+ # Clear all tasks in this application.
1625
+ def clear; end
1626
+
1627
+ def create_rule(*args, &block); end
1628
+
1629
+ # Return the list of scope names currently active in the task
1630
+ # manager.
1631
+ def current_scope; end
1632
+
1633
+ def define_task(task_class, *args, &block); end
1634
+
1635
+ # If a rule can be found that matches the task name, enhance the
1636
+ # task with the prerequisites and actions from the rule. Set the
1637
+ # source attribute of the task appropriately for the rule. Return
1638
+ # the enhanced task or nil of no rule was found.
1639
+ def enhance_with_matching_rule(task_name, level = T.unsafe(nil)); end
1640
+
1641
+ def generate_did_you_mean_suggestions(task_name); end
1642
+ def generate_message_for_undefined_task(task_name); end
1643
+
1644
+ # Evaluate the block in a nested namespace named +name+. Create
1645
+ # an anonymous namespace if +name+ is nil.
1646
+ def in_namespace(name); end
1647
+
1648
+ # Lookup a task. Return an existing task if found, otherwise
1649
+ # create a task of the current type.
1650
+ def intern(task_class, task_name); end
1651
+
1652
+ # Track the last comment made in the Rakefile.
1653
+ def last_description; end
1654
+
1655
+ # Track the last comment made in the Rakefile.
1656
+ def last_description=(_arg0); end
1657
+
1658
+ # Lookup a task, using scope and the scope hints in the task name.
1659
+ # This method performs straight lookups without trying to
1660
+ # synthesize file tasks or rules. Special scope names (e.g. '^')
1661
+ # are recognized. If no scope argument is supplied, use the
1662
+ # current scope. Return nil if the task cannot be found.
1663
+ def lookup(task_name, initial_scope = T.unsafe(nil)); end
1664
+
1665
+ # Resolve the arguments for a task/rule. Returns a tuple of
1666
+ # [task_name, arg_name_list, prerequisites, order_only_prerequisites].
1667
+ def resolve_args(args); end
1668
+
1669
+ def synthesize_file_task(task_name); end
1670
+
1671
+ # List of all defined tasks in this application.
1672
+ def tasks; end
1673
+
1674
+ # List of all the tasks defined in the given scope (and its
1675
+ # sub-scopes).
1676
+ def tasks_in_scope(scope); end
1677
+
1678
+ private
1679
+
1680
+ # Add a location to the locations field of the given task.
1681
+ def add_location(task); end
1682
+
1683
+ # Attempt to create a rule given the list of prerequisites.
1684
+ def attempt_rule(task_name, task_pattern, args, extensions, block, level); end
1685
+
1686
+ # Find the location that called into the dsl layer.
1687
+ def find_location; end
1688
+
1689
+ # Generate an anonymous namespace name.
1690
+ def generate_name; end
1691
+
1692
+ # Return the current description, clearing it in the process.
1693
+ def get_description(task); end
1694
+
1695
+ # Lookup the task name
1696
+ def lookup_in_scope(name, scope); end
1697
+
1698
+ # Make a list of sources from the list of file name extensions /
1699
+ # translation procs.
1700
+ def make_sources(task_name, task_pattern, extensions); end
1701
+
1702
+ # Resolve task arguments for a task or rule when there are
1703
+ # dependencies declared.
1704
+ #
1705
+ # The patterns recognized by this argument resolving function are:
1706
+ #
1707
+ # task :t, order_only: [:e]
1708
+ # task :t => [:d]
1709
+ # task :t => [:d], order_only: [:e]
1710
+ # task :t, [a] => [:d]
1711
+ # task :t, [a] => [:d], order_only: [:e]
1712
+ def resolve_args_with_dependencies(args, hash); end
1713
+
1714
+ # Resolve task arguments for a task or rule when there are no
1715
+ # dependencies declared.
1716
+ #
1717
+ # The patterns recognized by this argument resolving function are:
1718
+ #
1719
+ # task :t
1720
+ # task :t, [:a]
1721
+ def resolve_args_without_dependencies(args); end
1722
+
1723
+ def trace_rule(level, message); end
1724
+
1725
+ class << self
1726
+ def record_task_metadata; end
1727
+ def record_task_metadata=(_arg0); end
1728
+ end
1729
+ end
1730
+
1731
+ class Rake::ThreadHistoryDisplay
1732
+ include ::Rake::PrivateReader
1733
+ extend ::Rake::PrivateReader::ClassMethods
1734
+
1735
+ # @return [ThreadHistoryDisplay] a new instance of ThreadHistoryDisplay
1736
+ def initialize(stats); end
1737
+
1738
+ def show; end
1739
+
1740
+ private
1741
+
1742
+ def items; end
1743
+ def rename(hash, key, renames); end
1744
+ def stats; end
1745
+ def threads; end
1746
+ end
1747
+
1748
+ class Rake::ThreadPool
1749
+ # Creates a ThreadPool object. The +thread_count+ parameter is the size
1750
+ # of the pool.
1751
+ #
1752
+ # @return [ThreadPool] a new instance of ThreadPool
1753
+ def initialize(thread_count); end
1754
+
1755
+ # Creates a future executed by the +ThreadPool+.
1756
+ #
1757
+ # The args are passed to the block when executing (similarly to
1758
+ # Thread#new) The return value is an object representing
1759
+ # a future which has been created and added to the queue in the
1760
+ # pool. Sending #value to the object will sleep the
1761
+ # current thread until the future is finished and will return the
1762
+ # result (or raise an exception thrown from the future)
1763
+ def future(*args, &block); end
1764
+
1765
+ # Enable the gathering of history events.
1766
+ def gather_history; end
1767
+
1768
+ # Return a array of history events for the thread pool.
1769
+ #
1770
+ # History gathering must be enabled to be able to see the events
1771
+ # (see #gather_history). Best to call this when the job is
1772
+ # complete (i.e. after ThreadPool#join is called).
1773
+ def history; end
1774
+
1775
+ # Waits until the queue of futures is empty and all threads have exited.
1776
+ def join; end
1777
+
1778
+ # Return a hash of always collected statistics for the thread pool.
1779
+ def statistics; end
1780
+
1781
+ private
1782
+
1783
+ # for testing only
1784
+ def __queue__; end
1785
+
1786
+ # processes one item on the queue. Returns true if there was an
1787
+ # item to process, false if there was no item
1788
+ def process_queue_item; end
1789
+
1790
+ def safe_thread_count; end
1791
+ def start_thread; end
1792
+ def stat(event, data = T.unsafe(nil)); end
1793
+ end
1794
+
1795
+ module Rake::TraceOutput
1796
+ # Write trace output to output stream +out+.
1797
+ #
1798
+ # The write is done as a single IO call (to print) to lessen the
1799
+ # chance that the trace output is interrupted by other tasks also
1800
+ # producing output.
1801
+ def trace_on(out, *strings); end
1802
+ end
1803
+
1804
+ Rake::VERSION = T.let(T.unsafe(nil), String)
1805
+ module Rake::Version; end
1806
+ Rake::Version::BUILD = T.let(T.unsafe(nil), String)
1807
+ Rake::Version::MAJOR = T.let(T.unsafe(nil), String)
1808
+ Rake::Version::MINOR = T.let(T.unsafe(nil), String)
1809
+ Rake::Version::NUMBERS = T.let(T.unsafe(nil), Array)
1810
+ Rake::Version::OTHER = T.let(T.unsafe(nil), Array)
1811
+
1812
+ # Win 32 interface methods for Rake. Windows specific functionality
1813
+ # will be placed here to collect that knowledge in one spot.
1814
+ module Rake::Win32
1815
+ class << self
1816
+ # Normalize a win32 path so that the slashes are all forward slashes.
1817
+ def normalize(path); end
1818
+
1819
+ # The standard directory containing system wide rake files on
1820
+ # Win 32 systems. Try the following environment variables (in
1821
+ # order):
1822
+ #
1823
+ # * HOME
1824
+ # * HOMEDRIVE + HOMEPATH
1825
+ # * APPDATA
1826
+ # * USERPROFILE
1827
+ #
1828
+ # If the above are not defined, the return nil.
1829
+ #
1830
+ # @raise [Win32HomeError]
1831
+ def win32_system_dir; end
1832
+
1833
+ # True if running on a windows system.
1834
+ #
1835
+ # @return [Boolean]
1836
+ def windows?; end
1837
+ end
1838
+ end
1839
+
1840
+ # Error indicating a problem in locating the home directory on a
1841
+ # Win32 system.
1842
+ class Rake::Win32::Win32HomeError < ::RuntimeError; end
1843
+
1844
+ RakeFileUtils = Rake::FileUtilsExt
1845
+
1846
+ # Enhance the String class with a XML escaped character version of
1847
+ # to_s.
1848
+ class String
1849
+ include ::Comparable
1850
+ include ::JSON::Ext::Generator::GeneratorMethods::String
1851
+ include ::Colored2
1852
+ extend ::JSON::Ext::Generator::GeneratorMethods::String::Extend
1853
+
1854
+ def ext(newext = T.unsafe(nil)); end
1855
+ def pathmap(spec = T.unsafe(nil), &block); end
1856
+
1857
+ protected
1858
+
1859
+ def pathmap_explode; end
1860
+ def pathmap_partial(n); end
1861
+ def pathmap_replace(patterns, &block); end
1862
+ end
1863
+
1864
+ String::BLANK_RE = T.let(T.unsafe(nil), Regexp)
1865
+ String::ENCODED_BLANKS = T.let(T.unsafe(nil), Concurrent::Map)