Class: Resource::Patch Private

Inherits:
Resource
  • Object
show all
Defined in:
resource.rb

Overview

This class is part of a private API. This class may only be used in the Homebrew/brew repository. Third parties should avoid using this class if possible, as it may be removed or changed without warning.

A resource containing a patch.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(&block) ⇒ void

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.

Parameters:



470
471
472
473
474
475
# File 'resource.rb', line 470

def initialize(&block)
  @patch_files = T.let([], T::Array[T.any(String, Pathname)])
  @directory = T.let(nil, T.nilable(T.any(String, Pathname)))
  @file = T.let(nil, T.nilable(T.any(String, Pathname)))
  super "patch", &block
end

Instance Attribute Details

#patch_filesArray<String, Pathname> (readonly)

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.

Returns:



467
468
469
# File 'resource.rb', line 467

def patch_files
  @patch_files
end

Instance Method Details

#apply(*paths) ⇒ void

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.

This method returns an undefined value.

Parameters:



478
479
480
481
# File 'resource.rb', line 478

def apply(*paths)
  @patch_files.concat(paths.flatten)
  @patch_files.uniq!
end

#directory(val = nil) ⇒ String, ...

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.

Parameters:

Returns:



484
485
486
487
488
# File 'resource.rb', line 484

def directory(val = nil)
  return @directory if val.nil?

  @directory = val
end

#download_queue_nameString

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.

Returns:



506
507
508
509
510
511
512
# File 'resource.rb', line 506

def download_queue_name
  if (last_url_component = url.to_s.split("/").last)
    return last_url_component
  end

  super
end

#download_queue_typeString

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.

Returns:



503
# File 'resource.rb', line 503

def download_queue_type = "Patch"

#file(val = nil) ⇒ String, ...

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.

Parameters:

Returns:



491
492
493
494
495
496
497
498
499
500
# File 'resource.rb', line 491

def file(val = nil)
  return @file if val.nil?

  path_string = val.to_s
  unless LocalPatch.valid_path?(path_string)
    raise ArgumentError, "Patch file must be a relative path within the repository."
  end

  @file = val
end