Spec-Zone.ru › Homebrew

Класс: FormulaPin Приватный

Наследует:
Object
  • Object
  • FormulaPin
показать всё
Определён в:
formula_pin.rb

Обзор

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

Вспомогательные функции для закрепления формулы.

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

  • #initialize(formula) ⇒ void конструктор приватный
  • #path ⇒ Pathname приватный
  • #pin ⇒ void приватный
  • #pin_at(version) ⇒ void приватный
  • #pinnable? ⇒ Boolean приватный
  • #pinned? ⇒ Boolean приватный
  • #pinned_version ⇒ PkgVersion? приватный
  • #unpin ⇒ void приватный

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

#initialize(formula) ⇒ void

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

Параметры:

  • formula (Formula)


9
10
11
# File 'formula_pin.rb', line 9

def initialize(formula)
  @formula = formula
end

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

#path ⇒ Pathname

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

Возвращает:

  • (Pathname)


14
15
16
# File 'formula_pin.rb', line 14

def path
  HOMEBREW_PINNED_KEGS/@formula.name
end

#pin ⇒ void

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

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



26
27
28
29
30
31
# File 'formula_pin.rb', line 26

def pin
  latest_keg = @formula.installed_kegs.max_by(&:scheme_and_version)
  return if latest_keg.nil?

  pin_at(latest_keg.version)
end

#pin_at(version) ⇒ void

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

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

Параметры:

  • version (PkgVersion)


19
20
21
22
23
# File 'formula_pin.rb', line 19

def pin_at(version)
  HOMEBREW_PINNED_KEGS.mkpath
  version_path = @formula.rack/version.to_s
  path.make_relative_symlink(version_path) if !pinned? && version_path.exist?
end

#pinnable? ⇒ Boolean

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

Возвращает:

  • (Boolean)


45
46
47
# File 'formula_pin.rb', line 45

def pinnable?
  !@formula.installed_prefixes.empty?
end

#pinned? ⇒ Boolean

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

Возвращает:

  • (Boolean)


40
41
42
# File 'formula_pin.rb', line 40

def pinned?
  path.symlink?
end

#pinned_version ⇒ PkgVersion?

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

Возвращает:

  • (PkgVersion, nil)


50
51
52
# File 'formula_pin.rb', line 50

def pinned_version
  Keg.new(path.resolved_path).version if pinned?
end

#unpin ⇒ void

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

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



34
35
36
37
# File 'formula_pin.rb', line 34

def unpin
  path.unlink if pinned?
  HOMEBREW_PINNED_KEGS.rmdir_if_possible
end

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

Spec-Zone.ru

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