Spec-Zone.ru › Homebrew

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

Наследует:
FormulaLoader
  • Object
  • FormulaLoader
  • Formulary::FromAPILoader
показать все
Определён в:
formulary.rb

Обзор

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

Загрузить формулу из API.

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

FormulaJSONContentsLoader

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

Унаследованные атрибуты от FormulaLoader

#alias_path, #name, #path, #tap

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

  • .try_new(ref, from: nil, warn: false) ⇒ T.attached_class? приватный

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

  • #initialize(name, tap: nil, alias_name: nil) ⇒ void конструктор приватный
  • #klass(flags:, ignore_errors:) ⇒ T.class_of(Formula) приватный

Унаследованные методы от FormulaLoader

#get_formula

Методы, подключённые из 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

Методы, подключённые из Context

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

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

#initialize(name, tap: nil, alias_name: nil) ⇒ void

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

Параметры:

  • name (String)
  • tap (Tap, nil) (по умолчанию: nil)
  • alias_name (String, nil) (по умолчанию: nil)


936
937
938
939
940
# File 'formulary.rb', line 936

def initialize(name, tap: nil, alias_name: nil)
  alias_path = CoreTap.instance.alias_dir/alias_name if alias_name

  super(name, Formulary.core_path(name), alias_path:, tap:)
end

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

.try_new(ref, from: nil, warn: false) ⇒ T.attached_class?

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

Параметры:

  • ref (String, Pathname, URI::Generic)
  • from (Symbol, nil) (по умолчанию: nil)
  • warn (Boolean) (по умолчанию: false)

Возвращает:

  • (T.attached_class, nil)


912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
# File 'formulary.rb', line 912

def self.try_new(ref, from: nil, warn: false)
  return if Homebrew::EnvConfig.no_install_from_api?
  return unless ref.is_a?(String)
  return unless (name = ref[HOMEBREW_DEFAULT_TAP_FORMULA_REGEX, :name])
  if Homebrew::API.formula_names.exclude?(name) &&
     !Homebrew::API.formula_aliases.key?(name) &&
     !Homebrew::API.formula_renames.key?(name)
    return
  end

  alias_name = name

  ref = "#{CoreTap.instance}/#{name}"

  return unless (name_tap_type = Formulary.tap_formula_name_type(ref, warn:))

  name, tap, type = name_tap_type

  alias_name = (type == :alias) ? alias_name.downcase : nil

  new(name, tap:, alias_name:)
end

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

#klass(flags:, ignore_errors:) ⇒ T.class_of(Formula)

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

Параметры:

  • flags (Array<String>)
  • ignore_errors (Boolean)

Возвращает:

  • (T.class_of(Formula))


943
944
945
946
# File 'formulary.rb', line 943

def klass(flags:, ignore_errors:)
  load_from_api(flags:) unless Formulary.formula_class_defined_from_api?(name)
  Formulary.formula_class_get_from_api(name)
end

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

Spec-Zone.ru

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