Spec-Zone.ru › Homebrew

Класс: Homebrew::CLI::Args Приватный

Наследует:
Object
  • Object
  • Homebrew::CLI::Args
показать всё
Определён в:
cli/args.rbi,
cli/args.rb

Обзор

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

Этот файл содержит глобальные аргументы, определённые в Homebrew::CLI::Parser.global_options Аргументы, специфичные для Command, определяются в самих командах; их сигнатуры типов генерируются компилятором Tapioca::Compilers::Args.

Непосредственные известные подклассы

Homebrew::Cmd::Alias::Args, Homebrew::Cmd::Analytics::Args, Homebrew::Cmd::AsConsoleUser::Args, Homebrew::Cmd::Autoremove::Args, Homebrew::Cmd::Bundle::Args, Homebrew::Cmd::Cache::Args, Homebrew::Cmd::Caskroom::Args, Homebrew::Cmd::Casks::Args, Homebrew::Cmd::Cellar::Args, Homebrew::Cmd::CleanupCmd::Args, Homebrew::Cmd::Command::Args, Homebrew::Cmd::CommandNotFoundInit::Args, Homebrew::Cmd::CommandsCmd::Args, Homebrew::Cmd::CompletionsCmd::Args, Homebrew::Cmd::Config::Args, Homebrew::Cmd::Deps::Args, Homebrew::Cmd::Desc::Args, Homebrew::Cmd::Developer::Args, Homebrew::Cmd::Docs::Args, Homebrew::Cmd::Doctor::Args, Homebrew::Cmd::Env::Args, Homebrew::Cmd::Exec::Args, Homebrew::Cmd::FetchCmd::Args, Homebrew::Cmd::Formulae::Args, Homebrew::Cmd::GistLogs::Args, Homebrew::Cmd::HelpCmd::Args, Homebrew::Cmd::Home::Args, Homebrew::Cmd::Info::Args, Homebrew::Cmd::InstallCmd::Args, Homebrew::Cmd::Leaves::Args, Homebrew::Cmd::Link::Args, Homebrew::Cmd::List::Args, Homebrew::Cmd::Log::Args, Homebrew::Cmd::McpServerCmd::Args, Homebrew::Cmd::Migrate::Args, Homebrew::Cmd::Missing::Args, Homebrew::Cmd::NodenvSync::Args, Homebrew::Cmd::OptionsCmd::Args, Homebrew::Cmd::Outdated::Args, Homebrew::Cmd::Pin::Args, Homebrew::Cmd::Postinstall::Args, Homebrew::Cmd::Prefix::Args, Homebrew::Cmd::PyenvSync::Args, Homebrew::Cmd::RbenvSync::Args, Homebrew::Cmd::ReadallCmd::Args, Homebrew::Cmd::Reinstall::Args, Homebrew::Cmd::Repository::Args, Homebrew::Cmd::SandboxExec::Args, Homebrew::Cmd::SearchCmd::Args, Homebrew::Cmd::Services::Args, Homebrew::Cmd::SetupRuby::Args, Homebrew::Cmd::SetupSandbox::Args, Homebrew::Cmd::Shellenv::Args, Homebrew::Cmd::Source::Args, Homebrew::Cmd::TabCmd::Args, Homebrew::Cmd::TapCmd::Args, Homebrew::Cmd::TapInfo::Args, Homebrew::Cmd::Taps::Args, Homebrew::Cmd::TestBotCmd::Args, Homebrew::Cmd::Trust::Args, Homebrew::Cmd::Unalias::Args, Homebrew::Cmd::UninstallCmd::Args, Homebrew::Cmd::UnlinkCmd::Args, Homebrew::Cmd::Unpin::Args, Homebrew::Cmd::Untap::Args, Homebrew::Cmd::Untrust::Args, Homebrew::Cmd::Update::Args, Homebrew::Cmd::UpdateIfNeeded::Args, Homebrew::Cmd::UpdateReport::Args, Homebrew::Cmd::UpdateReset::Args, Homebrew::Cmd::UpgradeCmd::Args, Homebrew::Cmd::Uses::Args, Homebrew::Cmd::VendorInstall::Args, Homebrew::Cmd::Version::Args, Homebrew::Cmd::VersionInstall::Args, Homebrew::Cmd::WhichFormula::Args, DevCmd::Audit::Args, DevCmd::Bottle::Args, DevCmd::Bump::Args, DevCmd::BumpCaskPr::Args, DevCmd::BumpCompatibilityVersion::Args, DevCmd::BumpFormulaPr::Args, DevCmd::BumpRevision::Args, DevCmd::BumpUnversionedCasks::Args, DevCmd::Cat::Args, DevCmd::Contributions::Args, DevCmd::Create::Args, DevCmd::Debugger::Args, DevCmd::DetermineTestRunners::Args, DevCmd::DispatchBuildBottle::Args, DevCmd::Edit::Args, DevCmd::Extract::Args, DevCmd::FormulaAnalytics::Args, DevCmd::FormulaCmd::Args, DevCmd::GenerateAnalyticsApi::Args, DevCmd::GenerateCaskApi::Args, DevCmd::GenerateCaskCiMatrix::Args, DevCmd::GenerateFormulaApi::Args, DevCmd::GenerateInternalApi::Args, DevCmd::GenerateManCompletions::Args, DevCmd::GenerateZap::Args, DevCmd::InstallBundlerGems::Args, DevCmd::Irb::Args, DevCmd::Lgtm::Args, DevCmd::Linkage::Args, DevCmd::LivecheckCmd::Args, DevCmd::PrAutomerge::Args,

DevCmd::PrPublish::Args, DevCmd::PrPull::Args, DevCmd::PrUpload::Args, DevCmd::Prof::Args, DevCmd::Release::Args, DevCmd::Rubocop::Args, DevCmd::Ruby::Args, DevCmd::Rubydoc::Args, DevCmd::Sh::Args, DevCmd::StyleCmd::Args, DevCmd::TapNew::Args, DevCmd::Test::Args, DevCmd::Tests::Args, DevCmd::Typecheck::Args, DevCmd::Unbottled::Args, DevCmd::Unpack::Args, DevCmd::UpdateLicenseData::Args, DevCmd::UpdateMaintainers::Args, DevCmd::UpdatePerlResources::Args, DevCmd::UpdatePortableRuby::Args, DevCmd::UpdatePythonResources::Args, DevCmd::UpdateSponsors::Args, DevCmd::UpdateTest::Args, DevCmd::VendorGems::Args, DevCmd::Verify::Args, DevCmd::WhichUpdate::Args

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

OptionsType =

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

Представляет обработанную опцию. Элементы массива:

0: short option name (e.g. "-d")
1: long option name (e.g. "--debug")
2: option description (e.g. "Print debugging information")
3: whether the option is hidden
T.type_alias { T::Array[[T.nilable(String), T.nilable(String), String, T::Boolean]] }

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

  • #flags_only ⇒ Array<String> только для чтения приватный
  • #options_only ⇒ Array<String> только для чтения приватный
  • #remaining ⇒ Array<String> только для чтения приватный

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

  • #build_from_source_formulae ⇒ Array<String> приватный
  • #context ⇒ Context::ContextStruct приватный
  • #debug? ⇒ Boolean приватный
  • #freeze_named_args!(named_args, cask_options:, without_api:) ⇒ void приватный
  • #freeze_processed_options!(processed_options) ⇒ void приватный
  • #freeze_remaining_args!(remaining_args) ⇒ void приватный
  • #help? ⇒ Boolean приватный
  • #include_test_formulae ⇒ Array<String> приватный
  • #initialize ⇒ void конструктор приватный
  • #named ⇒ NamedArgs приватный
  • #no_named? ⇒ Boolean приватный
  • #only_formula_or_cask ⇒ Symbol? приватный
  • #os_arch_combinations ⇒ Array<Array<(Symbol, Symbol)>> приватный
  • #quiet? ⇒ Boolean приватный
  • #set_arg(name, value) ⇒ void приватный
  • #tap(&_blk) ⇒ T.untyped приватный
  • #value(name) ⇒ String? приватный
  • #verbose? ⇒ Boolean приватный

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

#initialize ⇒ void

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



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'cli/args.rb', line 18

def initialize
  require "cli/named_args"

  @cli_args = T.let(nil, T.nilable(T::Array[String]))
  @processed_options = T.let([], OptionsType)
  @options_only = T.let([], T::Array[String])
  @flags_only = T.let([], T::Array[String])
  @cask_options = T.let(false, T::Boolean)
  @table = T.let({}, T::Hash[Symbol, T.untyped])

  # Can set these because they will be overwritten by freeze_named_args!
  # (whereas other values below will only be overwritten if passed).
  @named = T.let(NamedArgs.new(parent: self), T.nilable(NamedArgs))
  @remaining = T.let([], T::Array[String])
end

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

#flags_only ⇒ Array<String> (только для чтения)

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

Возвращает:

  • (Array<String>)


15
16
17
# File 'cli/args.rb', line 15

def flags_only
  @flags_only
end

#options_only ⇒ Array<String> (только для чтения)

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

Возвращает:

  • (Array<String>)


15
16
17
# File 'cli/args.rb', line 15

def options_only
  @options_only
end

#remaining ⇒ Array<String> (только для чтения)

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

Возвращает:

  • (Array<String>)


15
16
17
# File 'cli/args.rb', line 15

def remaining
  @remaining
end

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

#build_from_source_formulae ⇒ Array<String>

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

Возвращает:

  • (Array<String>)


87
88
89
90
91
92
93
# File 'cli/args.rb', line 87

def build_from_source_formulae
  if @table[:build_from_source?] || @table[:HEAD?] || @table[:build_bottle?]
    named.to_formulae.map(&:full_name)
  else
    []
  end
end

#context ⇒ Context::ContextStruct

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

Возвращает:

  • (Context::ContextStruct)


114
115
116
# File 'cli/args.rb', line 114

def context
  Context::ContextStruct.new(debug: debug?, quiet: quiet?, verbose: verbose?)
end

#debug? ⇒ Boolean

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

Возвращает:

  • (Boolean)


9
# File 'cli/args.rbi', line 9

def debug?; end

#freeze_named_args!(named_args, cask_options:, without_api:) ⇒ void

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

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

Параметры:

  • named_args (Array<String>)
  • cask_options (Boolean)
  • without_api (Boolean)


38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'cli/args.rb', line 38

def freeze_named_args!(named_args, cask_options:, without_api:)
  @named = T.let(
    NamedArgs.new(
      *named_args.freeze,
      cask_options:,
      flags:         flags_only,
      force_bottle:  @table[:force_bottle?] || false,
      override_spec: @table[:HEAD?] ? :head : nil,
      parent:        self,
      without_api:,
    ),
    T.nilable(NamedArgs),
  )
end

#freeze_processed_options!(processed_options) ⇒ void

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

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

Параметры:

  • processed_options (OptionsType)


66
67
68
69
70
71
72
73
74
75
# File 'cli/args.rb', line 66

def freeze_processed_options!(processed_options)
  # Reset cache values reliant on processed_options
  @cli_args = nil

  @processed_options += processed_options
  @processed_options.freeze

  @options_only = cli_args.select { it.start_with?("-") }.freeze
  @flags_only = cli_args.select { it.start_with?("--") }.freeze
end

#freeze_remaining_args!(remaining_args) ⇒ void

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

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

Параметры:

  • remaining_args (Array<Array<String>, String>)


35
# File 'cli/args.rb', line 35

def freeze_remaining_args!(remaining_args) = @remaining.replace(remaining_args).freeze

#help? ⇒ Boolean

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

Возвращает:

  • (Boolean)


12
# File 'cli/args.rbi', line 12

def help?; end

#include_test_formulae ⇒ Array<String>

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

Возвращает:

  • (Array<String>)


96
97
98
99
100
101
102
# File 'cli/args.rb', line 96

def include_test_formulae
  if @table[:include_test?]
    named.to_formulae.map(&:full_name)
  else
    []
  end
end

#named ⇒ NamedArgs

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

Возвращает:

  • (NamedArgs)


78
79
80
81
# File 'cli/args.rb', line 78

def named
  require "formula"
  T.must(@named)
end

#no_named? ⇒ Boolean

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

Возвращает:

  • (Boolean)


84
# File 'cli/args.rb', line 84

def no_named? = named.empty?

#only_formula_or_cask ⇒ Symbol?

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

Возвращает:

  • (Symbol, nil)


119
120
121
122
123
124
125
# File 'cli/args.rb', line 119

def only_formula_or_cask
  if @table[:formula?] && !@table[:cask?]
    :formula
  elsif @table[:cask?] && !@table[:formula?]
    :cask
  end
end

#os_arch_combinations ⇒ Array<Array<(Symbol, Symbol)>>

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

Возвращает:

  • (Array<Array<(Symbol, Symbol)>>)


128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
# File 'cli/args.rb', line 128

def os_arch_combinations
  skip_invalid_combinations = false

  # `--all-platforms` is equivalent to `--os=all --arch=all`.
  all_platforms = @table[:all_platforms?]

  os_sym = all_platforms ? :all : @table[:os]&.to_sym
  oses = case os_sym
  when nil
    [SimulateSystem.current_os]
  when :all
    skip_invalid_combinations = true

    OnSystem::ALL_OS_OPTIONS
  else
    [os_sym]
  end

  arch_sym = all_platforms ? :all : @table[:arch]&.to_sym
  arches = case arch_sym
  when nil
    [SimulateSystem.current_arch]
  when :all
    skip_invalid_combinations = true
    OnSystem::ARCH_OPTIONS
  else
    [arch_sym]
  end

  oses.product(arches).select do |os, arch|
    if skip_invalid_combinations
      bottle_tag = Utils::Bottles::Tag.new(system: os, arch:)
      bottle_tag.valid_combination?
    else
      true
    end
  end
end

#quiet? ⇒ Boolean

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

Возвращает:

  • (Boolean)


15
# File 'cli/args.rbi', line 15

def quiet?; end

#set_arg(name, value) ⇒ void

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

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

Параметры:

  • name (Symbol)
  • value (T.untyped)


54
55
56
# File 'cli/args.rb', line 54

def set_arg(name, value)
  @table[name] = value
end

#tap(&_blk) ⇒ T.untyped

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

Параметры:

  • _blk (T.proc.params(x: T.untyped).void, nil)

Возвращает:

  • (T.untyped)


59
60
61
62
63
# File 'cli/args.rb', line 59

def tap(&_blk)
  return super if block_given? # Object#tap

  @table[:tap]
end

#value(name) ⇒ String?

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

Параметры:

  • name (String)

Возвращает:

  • (String, nil)


105
106
107
108
109
110
111
# File 'cli/args.rb', line 105

def value(name)
  arg_prefix = "--#{name}="
  flag_with_value = flags_only.find { |arg| arg.start_with?(arg_prefix) }
  return unless flag_with_value

  flag_with_value.delete_prefix(arg_prefix)
end

#verbose? ⇒ Boolean

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

Возвращает:

  • (Boolean)


18
# File 'cli/args.rbi', line 18

def verbose?; end

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

Spec-Zone.ru

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