Spec-Zone.ru › Homebrew

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

Наследует:
Requirement
  • Object
  • Requirement
  • XcodeRequirement
показать все
Определён в:
requirements/xcode_requirement.rb,
extend/os/linux/requirements/xcode_requirement.rb

Обзор

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

Требование к Xcode.

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

Cache =

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

type_template { { fixed: T::Hash[String, T.untyped] } }

Константы, включённые из Dependable

Dependable::KEEP_BUT_PRUNE_RECURSIVE_DEPS, Dependable::PRUNE, Dependable::RESERVED_TAGS, Dependable::SKIP

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

  • #version ⇒ String? только для чтения приватный

Атрибуты, унаследованные от Requirement

#cask, #download, #name, #tags

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

  • #display_s ⇒ String приватный
  • #initialize(tags = []) ⇒ void конструктор приватный
  • #message ⇒ String приватный
  • #xcode_installed_version! ⇒ Boolean приватный

Методы, унаследованные от Requirement

cask, download, #env, env, #env_proc, expand, fatal, #fatal?, inherited, #mktemp, #modify_build_environment, #option_names, prune?, #satisfied?, #satisfied_result_parent, satisfy, #tap, #which

Методы, включённые из BuildEnvironment::DSL

#env, #inherited

Методы, включённые из Cachable

#cache, #clear_cache

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

Методы, включённые из Dependable

#build?, #implicit?, #no_linkage?, #option_names, #option_tags, #optional?, #options, #prune_from_option?, #prune_if_build_and_not_dependent?, #recommended?, #required?, #tags, #test?

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

#initialize(tags = []) ⇒ void

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

Параметры:

  • tags (Array<String, Symbol>) (по умолчанию: [])


24
25
26
27
28
# File 'requirements/xcode_requirement.rb', line 24

def initialize(tags = [])
  version = tags.shift if tags.first.to_s.match?(/(\d\.)+\d/)
  @version = T.let(version&.to_s, T.nilable(String))
  super
end

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

#version ⇒ String? (только для чтения)

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

Возвращает:

  • (String, nil)


16
17
18
# File 'requirements/xcode_requirement.rb', line 16

def version
  @version
end

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

#display_s ⇒ String

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

Возвращает:

  • (String)


65
66
67
68
69
# File 'requirements/xcode_requirement.rb', line 65

def display_s
  return "#{name.capitalize} (on macOS)" unless @version

  "#{name.capitalize} >= #{@version} (on macOS)"
end

#message ⇒ String

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

Возвращает:

  • (String)


39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'requirements/xcode_requirement.rb', line 39

def message
  version = "#{@version}" if @version
  message = <<~EOS
    A full installation of Xcode.app#{version} is required to compile
    this software. Installing just the Command Line Tools is not sufficient.
  EOS
  if @version && Version.new(MacOS::Xcode.latest_version) < Version.new(@version)
    message + <<~EOS
      Xcode#{version} cannot be installed on macOS #{MacOS.version}.
      You must upgrade your version of macOS.
    EOS
  else
    message + <<~EOS
      Xcode can be installed from the App Store.
    EOS
  end
end

#xcode_installed_version! ⇒ Boolean

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

Возвращает:

  • (Boolean)


8
9
10
# File 'extend/os/linux/requirements/xcode_requirement.rb', line 8

def xcode_installed_version!
  true
end

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

Spec-Zone.ru

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