Spec-Zone.ru › Homebrew

Класс: EmbeddedPatch Абстрактный Закрытый

Наследует:
Object
  • Object
  • EmbeddedPatch
показать все
Расширен модулем:
T::Helpers
Подключает:
Utils::Output::Mixin
Определён в:
embedded_patch.rb

Обзор

Этот класс является частью закрытого API. Этот класс можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот класс, так как он может быть удалён или изменён без предупреждения.

Этот класс является абстрактным.

Его нельзя создать напрямую. Подклассы должны реализовать перечисленные ниже методы abstract.

Абстрактный класс, представляющий патч, встроенный в формулу.

Непосредственно известные подклассы

DATAPatch, LocalPatch, StringPatch

Краткое описание атрибутов экземпляра свернуть

  • #directory ⇒ String, ... закрытый
  • #owner ⇒ Resource::Owner? только для записи закрытый
  • #strip ⇒ String, Symbol только для чтения закрытый

Краткое описание методов экземпляра свернуть

  • #apply ⇒ void закрытый
  • #contents ⇒ String абстрактный закрытый
  • #external? ⇒ Boolean закрытый
  • #initialize(strip) ⇒ void конструктор закрытый

Методы, подключённые из Utils::Output::Mixin

#issue_reporting_message, #odebug, #odeprecated, #odie, #odisabled, #ofail, #oh1, #oh1_title, #ohai, #ohai_title, #onoe, #opoo, #opoo_outside_github_actions, #opoo_without_github_actions_annotation, #pretty_deprecated, #pretty_disabled, #pretty_duration, #pretty_install_status, #pretty_installed, #pretty_uninstalled, #pretty_upgradable, #pretty_warning

Подробное описание конструкторов

#initialize(strip) ⇒ void

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот метод, так как он может быть удалён или изменён без предупреждения.

Параметры:

  • strip (String, Symbol)


24
25
26
27
28
# File 'embedded_patch.rb', line 24

def initialize(strip)
  @strip = strip
  @owner = T.let(nil, T.nilable(Resource::Owner))
  @directory = T.let(nil, T.nilable(T.any(String, Pathname)))
end

Подробное описание атрибутов экземпляра

#directory ⇒ String, ...

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот метод, так как он может быть удалён или изменён без предупреждения.

Возвращает:

  • (String, Pathname, nil)


21
22
23
# File 'embedded_patch.rb', line 21

def directory
  @directory
end

#owner=(value) ⇒ Resource::Owner? (только для записи)

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот метод, так как он может быть удалён или изменён без предупреждения.

Возвращает:

  • (Resource::Owner, nil)


15
16
17
# File 'embedded_patch.rb', line 15

def owner=(value)
  @owner = value
end

#strip ⇒ String, Symbol (только для чтения)

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот метод, так как он может быть удалён или изменён без предупреждения.

Возвращает:

  • (String, Symbol)


18
19
20
# File 'embedded_patch.rb', line 18

def strip
  @strip
end

Подробное описание методов экземпляра

#apply ⇒ void

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот метод, так как он может быть удалён или изменён без предупреждения.

Этот метод возвращает неопределённое значение.



39
40
41
42
43
44
45
46
47
48
49
# File 'embedded_patch.rb', line 39

def apply
  data = contents.gsub("@@HOMEBREW_PREFIX@@", HOMEBREW_PREFIX)
  args = %W[-g0-f-#{strip}]
  dir = Pathname.pwd
  if (subdirectory = directory.presence)
    dir /= subdirectory
  end
  dir.cd do
    Utils.safe_popen_write("patch", *args) { |p| p.write(data) }
  end
end

#contents ⇒ String

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот метод, так как он может быть удалён или изменён без предупреждения.

Этот метод является абстрактным.

Возвращает:

  • (String)


36
# File 'embedded_patch.rb', line 36

def contents; end

#external? ⇒ Boolean

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот метод, так как он может быть удалён или изменён без предупреждения.

Возвращает:

  • (Boolean)


31
32
33
# File 'embedded_patch.rb', line 31

def external?
  false
end

© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/EmbeddedPatch.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API