Модуль: Dependable Абстрактный Приватный
Обзор
Этот модуль является частью приватного API. Этот модуль можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого модуля, поскольку он может быть удалён или изменён без предупреждения.
Подклассы должны реализовать приведённые ниже методы abstract.
Общие функции для классов, от которых могут зависеть другие классы.
Сводка констант свернуть
- PRUNE =
Эта константа является частью приватного API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.
Верните это значение из блока Dependency.expand или Requirement.expand, чтобы удалить зависимость/требование и все его рекурсивные зависимости из списка результатов.
:prune- SKIP =
Эта константа является частью приватного API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.
Верните это значение из блока Dependency.expand, чтобы исключить зависимость из списка результатов, продолжив раскрытие её дочерних зависимостей.
:skip- KEEP_BUT_PRUNE_RECURSIVE_DEPS =
Эта константа является частью приватного API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.
Верните это значение из блока Dependency.expand, чтобы оставить зависимость в списке результатов, но прекратить рекурсивное раскрытие её собственных зависимостей.
:keep_but_prune_recursive_deps- RESERVED_TAGS =
Эта константа является частью приватного API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.
:runи:linkedбольше не используются, но оставлены здесь, чтобы избежать их неправильного применения в будущем. T.let( [:build, :optional, :recommended, :run, :test, :linked, :implicit, :no_linkage].freeze, T::Array[Symbol], )
Сводка методов экземпляра свернуть
- #build? ⇒ Boolean приватный
- #implicit? ⇒ Boolean приватный
- #no_linkage? ⇒ Boolean приватный
- #option_names ⇒ Array<String> абстрактный приватный
- #option_tags ⇒ Array<String> приватный
- #optional? ⇒ Boolean приватный
- #options ⇒ Options приватный
- #prune_from_option?(build) ⇒ Boolean приватный
- #prune_if_build_and_not_dependent?(dependent, formula = nil) ⇒ Boolean приватный
- #recommended? ⇒ Boolean приватный
- #required? ⇒ Boolean приватный
- #tags ⇒ Array<Symbol, String, Array<T.untyped>> приватный
- #test? ⇒ Boolean приватный
Подробное описание методов экземпляра
#build? ⇒ Boolean
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
40 41 42 | # File 'dependable.rb', line 40 def build? .include? :build end |
#implicit? ⇒ Boolean
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
60 61 62 | # File 'dependable.rb', line 60 def implicit? .include? :implicit end |
#no_linkage? ⇒ Boolean
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
65 66 67 | # File 'dependable.rb', line 65 def no_linkage? .include? :no_linkage end |
#option_names ⇒ Array<String>
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
37 | # File 'dependable.rb', line 37 def option_names; end |
#option_tags ⇒ Array<String>
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
75 76 77 | # File 'dependable.rb', line 75 def .grep(String) end |
#optional? ⇒ Boolean
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
45 46 47 | # File 'dependable.rb', line 45 def optional? .include? :optional end |
#options ⇒ Options
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
80 81 82 | # File 'dependable.rb', line 80 def Options.create() end |
#prune_from_option?(build) ⇒ Boolean
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
85 86 87 88 89 | # File 'dependable.rb', line 85 def prune_from_option?(build) return false if !optional? && !recommended? build.without?(self) end |
#prune_if_build_and_not_dependent?(dependent, formula = nil) ⇒ Boolean
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
92 93 94 95 96 97 98 99 100 101 102 | # File 'dependable.rb', line 92 def prune_if_build_and_not_dependent?(dependent, formula = nil) return false unless build? if formula dependent != formula else raise "dependent is not a formula or cask dependent" unless dependent.is_a?(Dependency) dependent.installed? end end |
#recommended? ⇒ Boolean
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
50 51 52 | # File 'dependable.rb', line 50 def recommended? .include? :recommended end |
#required? ⇒ Boolean
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
70 71 72 | # File 'dependable.rb', line 70 def required? !build? && !test? && !optional? && !recommended? end |
#tags ⇒ Array<Symbol, String, Array<T.untyped>>
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
32 33 34 | # File 'dependable.rb', line 32 def @tags ||= T.let([], T.nilable(T::Array[T.any(Symbol, String, T::Array[T.untyped])])) end |
#test? ⇒ Boolean
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
55 56 57 | # File 'dependable.rb', line 55 def test? .include? :test end |
© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/Dependable.html