Spec-Zone.ru › Homebrew

Класс: BuildEnvironment Закрытый

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

Обзор

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

Настройки среды сборки.

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

Модули: DSL

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

  • .dump(env, out = $stdout) ⇒ void закрытый
  • .keys(env) ⇒ Array<String> закрытый

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

  • #<<(option) ⇒ T.self_type закрытый
  • #initialize(*settings) ⇒ void конструктор закрытый
  • #merge(*args) ⇒ T.self_type закрытый
  • #std? ⇒ Boolean закрытый

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

#initialize(*settings) ⇒ void

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

Параметры:

  • settings (Symbol)


7
8
9
# File 'build_environment.rb', line 7

def initialize(*settings)
  @settings = T.let(Set.new(settings), T::Set[Symbol])
end

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

.dump(env, out = $stdout) ⇒ void

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

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

Параметры:

  • env (Hash{String => String, Boolean, PATH, nil})
  • out (IO) (по умолчанию: $stdout)


71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# File 'build_environment.rb', line 71

def self.dump(env, out = $stdout)
  keys = self.keys(env)
  keys -= %w[CCCXXOBJCOBJCXX] if env["CC"] == env["HOMEBREW_CC"]

  keys.each do |key|
    value = env.fetch(key)

    string = "#{key}: #{value}"
    case key
    when "CC", "CXX", "LD"
      value = T.cast(value, String)
      string << " => #{Pathname.new(value).realpath}" if value.present? && File.symlink?(value)
    end
    string.freeze
    out.puts string
  end
end

.keys(env) ⇒ Array<String>

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

Параметры:

  • env (Hash{String => String, Boolean, PATH, nil})

Возвращает:

  • (Array<String>)


66
67
68
# File 'build_environment.rb', line 66

def self.keys(env)
  KEYS & env.keys
end

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

#<<(option) ⇒ T.self_type

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

Параметры:

  • option (Symbol)

Возвращает:

  • (T.self_type)


18
19
20
21
# File 'build_environment.rb', line 18

def <<(option)
  @settings << option
  self
end

#merge(*args) ⇒ T.self_type

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

Параметры:

  • args (Enumerable<Symbol>)

Возвращает:

  • (T.self_type)


12
13
14
15
# File 'build_environment.rb', line 12

def merge(*args)
  @settings.merge(*args)
  self
end

#std? ⇒ Boolean

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

Возвращает:

  • (Boolean)


24
25
26
# File 'build_environment.rb', line 24

def std?
  @settings.include? :std
end

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

Spec-Zone.ru

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