Spec-Zone.ru › Homebrew

Класс: Resource::BottleManifest Закрытый

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

Обзор

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

Ресурс для манифеста бутылки.

Определено в пространстве имён

Классы: Error

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

  • #bottle ⇒ Bottle только для чтения закрытый

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

  • #bottle_size ⇒ Integer? закрытый
  • #clear_cache ⇒ void закрытый
  • #download_queue_name ⇒ String закрытый
  • #download_queue_type ⇒ String закрытый
  • #downloaded_and_valid? ⇒ Boolean закрытый
  • #initialize(bottle) ⇒ void конструктор закрытый
  • #installed_size ⇒ Integer? закрытый
  • #path_exec_files ⇒ Array<String>? закрытый
  • #tab ⇒ Hash{String => T.untyped} закрытый
  • #verify_download_integrity(_filename) ⇒ void закрытый

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

#initialize(bottle) ⇒ void

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

Параметры:

  • bottle (Bottle)


361
362
363
364
365
# File 'resource.rb', line 361

def initialize(bottle)
  super("#{bottle.name}_bottle_manifest")
  @bottle = bottle
  @manifest_annotations = T.let(nil, T.nilable(T::Hash[String, T.untyped]))
end

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

#bottle ⇒ Bottle (только для чтения)

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

Возвращает:

  • (Bottle)


358
359
360
# File 'resource.rb', line 358

def bottle
  @bottle
end

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

#bottle_size ⇒ Integer?

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

Возвращает:

  • (Integer, nil)


403
404
405
# File 'resource.rb', line 403

def bottle_size
  manifest_annotations["sh.brew.bottle.size"]&.to_i
end

#clear_cache ⇒ void

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

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



368
369
370
371
# File 'resource.rb', line 368

def clear_cache
  super
  @manifest_annotations = nil
end

#download_queue_name ⇒ String

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

Возвращает:

  • (String)


421
# File 'resource.rb', line 421

def download_queue_name = "#{bottle.name} (#{bottle.resource.version})"

#download_queue_type ⇒ String

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

Возвращает:

  • (String)


418
# File 'resource.rb', line 418

def download_queue_type = "Bottle Manifest"

#downloaded_and_valid? ⇒ Boolean

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

Возвращает:

  • (Boolean)


380
381
382
383
384
385
386
387
388
# File 'resource.rb', line 380

def downloaded_and_valid?
  return false unless downloaded?

  with_context(quiet: true) { verify_download_integrity(cached_download) }
  true
rescue Error
  clear_cache
  false
end

#installed_size ⇒ Integer?

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

Возвращает:

  • (Integer, nil)


408
409
410
# File 'resource.rb', line 408

def installed_size
  manifest_annotations["sh.brew.bottle.installed_size"]&.to_i
end

#path_exec_files ⇒ Array<String>?

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

Возвращает:

  • (Array<String>, nil)


413
414
415
# File 'resource.rb', line 413

def path_exec_files
  manifest_annotations["sh.brew.path_exec_files"]&.split(",")
end

#tab ⇒ Hash{String => T.untyped}

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

Возвращает:

  • (Hash{String => T.untyped})

Вызывает исключение:

  • (Error)


391
392
393
394
395
396
397
398
399
400
# File 'resource.rb', line 391

def tab
  tab = manifest_annotations["sh.brew.tab"]
  raise Error, "Couldn't find tab from manifest." if tab.blank?

  begin
    JSON.parse(tab)
  rescue JSON::ParserError
    raise Error, "Couldn't parse tab JSON."
  end
end

#verify_download_integrity(_filename) ⇒ void

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

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

Параметры:

  • _filename (Pathname)


374
375
376
377
# File 'resource.rb', line 374

def verify_download_integrity(_filename)
  # We don't have a checksum, but we can at least try parsing it.
  tab
end

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

Spec-Zone.ru

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