Класс: CaskDependent Приватный
- Наследует:
- Object
- Object
- CaskDependent
- Определён в:
- cask_dependent.rb
Обзор
Этот класс является частью приватного API. Этот класс можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого класса, поскольку он может быть удалён или изменён без предупреждения.
Адаптер для cask, предоставляющий информацию о зависимостях через интерфейс, аналогичный интерфейсу формулы.
Определено в пространстве имён
Классы: Requirement
Краткое описание атрибутов экземпляра свернуть
- #cask ⇒ Cask::Cask только для чтения приватный
Краткое описание методов экземпляра свернуть
- #any_version_installed? ⇒ Boolean приватный
- #deps ⇒ Array<Dependency> приватный
- #full_name ⇒ String приватный
- #initialize(cask) ⇒ void конструктор приватный
- #name ⇒ String приватный
- #recursive_dependencies(&block) ⇒ Array<::Dependency> приватный
- #recursive_requirements(&block) ⇒ Requirements приватный
- #requirements ⇒ Array<::Requirement> приватный
- #runtime_dependencies(read_from_tab: true, undeclared: true) ⇒ Array<Dependency> приватный
Подробное описание конструкторов
#initialize(cask) ⇒ void
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
27 28 29 | # File 'cask_dependent.rb', line 27 def initialize(cask) @cask = cask end |
Подробное описание атрибутов экземпляра
#cask ⇒ Cask::Cask (только для чтения)
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
24 25 26 | # File 'cask_dependent.rb', line 24 def cask @cask end |
Подробное описание методов экземпляра
#any_version_installed? ⇒ Boolean
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
113 114 115 | # File 'cask_dependent.rb', line 113 def any_version_installed? @cask.installed? end |
#deps ⇒ Array<Dependency>
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
49 50 51 52 53 54 55 56 | # File 'cask_dependent.rb', line 49 def deps @deps ||= T.let( @cask.depends_on.formula.map do |f| Dependency.new f end, T.nilable(T::Array[Dependency]), ) end |
#full_name ⇒ String
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
37 38 39 | # File 'cask_dependent.rb', line 37 def full_name @cask.full_name end |
#name ⇒ String
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
32 33 34 | # File 'cask_dependent.rb', line 32 def name @cask.token end |
#recursive_dependencies(&block) ⇒ Array<::Dependency>
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
98 99 100 | # File 'cask_dependent.rb', line 98 def recursive_dependencies(&block) Dependency.(self, &block) end |
#recursive_requirements(&block) ⇒ Requirements
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
108 109 110 | # File 'cask_dependent.rb', line 108 def recursive_requirements(&block) Requirement.(self, &block) end |
#requirements ⇒ Array<::Requirement>
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | # File 'cask_dependent.rb', line 59 def requirements @requirements ||= T.let( begin requirements = [] dsl_reqs = @cask.depends_on dsl_reqs.arch&.each do |arch| arch = if arch[:bits] == 64 if arch[:type] == :intel :x86_64 else :"#{arch[:type]}64" end elsif arch[:type] == :intel && arch[:bits] == 32 :i386 else arch[:type] end requirements << ArchRequirement.new([arch]) end dsl_reqs.cask.each do |cask_ref| requirements << CaskDependent::Requirement.new([{ cask: cask_ref }]) end requirements << dsl_reqs.linux if dsl_reqs.linux requirements << dsl_reqs.macos if dsl_reqs.macos requirements << dsl_reqs.maximum_macos if dsl_reqs.maximum_macos requirements end, T.nilable(T::Array[::Requirement]), ) end |
#runtime_dependencies(read_from_tab: true, undeclared: true) ⇒ Array<Dependency>
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
42 43 44 45 46 | # File 'cask_dependent.rb', line 42 def runtime_dependencies(read_from_tab: true, undeclared: true) deps.flat_map do |dep| [dep, *dep.to_installed_formula.runtime_dependencies(read_from_tab:, undeclared:)] end.uniq end |
© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/CaskDependent.html