Class: EmbeddedPatch Private
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.
An abstract class representing a patch embedded into a formula.
Direct Known Subclasses
Instance Attribute Summary collapse
- #owner ⇒ Object writeonly private
- #strip ⇒ Object readonly private
Instance Method Summary collapse
- #apply ⇒ Object private
- #contents ⇒ Object private
- #external? ⇒ Boolean private
-
#initialize(strip) ⇒ EmbeddedPatch
constructor
private
A new instance of EmbeddedPatch.
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
Constructor Details
#initialize(strip) ⇒ EmbeddedPatch
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 EmbeddedPatch.
40 41 42 |
# File 'patch.rb', line 40 def initialize(strip) @strip = strip end |
Instance Attribute Details
#owner=(value) ⇒ Object (writeonly)
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.
37 38 39 |
# File 'patch.rb', line 37 def owner=(value) @owner = value end |
#strip ⇒ Object (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.
38 39 40 |
# File 'patch.rb', line 38 def strip @strip end |
Instance Method Details
#apply ⇒ 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.
51 52 53 54 55 56 57 58 59 |
# File 'patch.rb', line 51 def apply data = contents.gsub("@@HOMEBREW_PREFIX@@", HOMEBREW_PREFIX) if data.gsub!("HOMEBREW_PREFIX", HOMEBREW_PREFIX) odeprecated "patch with HOMEBREW_PREFIX placeholder", "patch with @@HOMEBREW_PREFIX@@ placeholder" end args = %W[-g 0 -f -#{strip}] Utils.safe_popen_write("patch", *args) { |p| p.write(data) } end |
#contents ⇒ 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.
49 |
# File 'patch.rb', line 49 def contents; end |
#external? ⇒ Boolean
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.
45 46 47 |
# File 'patch.rb', line 45 def external? false end |