Class: Resource::Patch Private

Inherits:
Resource 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

Attributes inherited from Resource

#checksum, #download_strategy, #name, #owner, #patches, #source_modified_time

Attributes included from Downloadable

#checksum, #mirrors, #url

Instance Method Summary collapse

Methods inherited from Resource

#apply_patches, #fetch, #fetch_patches, #files, #freeze, #initialize_dup, #livecheck, #livecheck_defined?, #livecheckable?, #mirror, #patch, #prepare_patches, #sha256, #specs, #stage, #unpack, #url, #using, #version

Methods included from Utils::Output::Mixin

#odebug, #odeprecated, #odie, #odisabled, #ofail, #oh1, #oh1_title, #ohai, #ohai_title, #onoe, #opoo, #opoo_outside_github_actions, #pretty_duration, #pretty_installed, #pretty_outdated, #pretty_uninstalled

Methods included from OnSystem::MacOSAndLinux

included, #on_arch_conditional, #on_macos, #on_system_conditional

Methods included from Downloadable

#cached_download, #clear_cache, #download_strategy, #downloaded?, #downloader, #fetch, #freeze, #initialize_dup, #verify_download_integrity, #version

Methods included from Context

current, current=, #debug?, #quiet?, #verbose?, #with_context

Constructor Details

#initialize(&block) ⇒ Patch

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 a new instance of Patch.



384
385
386
387
388
# File 'resource.rb', line 384

def initialize(&block)
  @patch_files = []
  @directory = nil
  super "patch", &block
end

Instance Attribute Details

#patch_filesObject (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.



382
383
384
# File 'resource.rb', line 382

def patch_files
  @patch_files
end

Instance Method Details

#apply(*paths) ⇒ Object

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.



390
391
392
393
394
# File 'resource.rb', line 390

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

#directory(val = nil) ⇒ Object

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.



396
397
398
399
400
# File 'resource.rb', line 396

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:



406
407
408
409
410
411
412
# File 'resource.rb', line 406

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:



403
# File 'resource.rb', line 403

def download_queue_type = "Patch"