Module: Dependable Private
- Included in:
- Dependency, Requirement
- Defined in:
- dependable.rb
Overview
This module is part of a private API. This module may only be used in the Homebrew/brew repository. Third parties should avoid using this module if possible, as it may be removed or changed without warning.
Shared functions for classes which can be depended upon.
Constant Summary collapse
- RESERVED_TAGS =
This constant is part of a private API. This constant may only be used in the Homebrew/brew repository. Third parties should avoid using this constant if possible, as it may be removed or changed without warning.
:run
and:linked
are no longer used but keep them here to avoid their misuse in future. [:build, :optional, :recommended, :run, :test, :linked].freeze
Instance Attribute Summary collapse
-
#tags ⇒ Object
readonly
private
Instance Method Summary collapse
-
#build? ⇒ Boolean
private
-
#option_tags ⇒ Object
private
-
#optional? ⇒ Boolean
private
-
#options ⇒ Object
private
-
#prune_from_option?(build) ⇒ Boolean
private
-
#prune_if_build_and_not_dependent?(dependent, formula = nil) ⇒ Boolean
private
-
#recommended? ⇒ Boolean
private
-
#required? ⇒ Boolean
private
-
#test? ⇒ Boolean
private
Instance Attribute Details
#tags ⇒ Object (readonly)
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
14 15 16 |
# File 'dependable.rb', line 14 def @tags end |
Instance Method Details
#build? ⇒ Boolean
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
16 17 18 |
# File 'dependable.rb', line 16 def build? .include? :build end |
#option_tags ⇒ Object
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
36 37 38 |
# File 'dependable.rb', line 36 def - RESERVED_TAGS end |
#optional? ⇒ Boolean
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
20 21 22 |
# File 'dependable.rb', line 20 def optional? .include? :optional end |
#options ⇒ Object
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
40 41 42 |
# File 'dependable.rb', line 40 def Options.create() end |
#prune_from_option?(build) ⇒ Boolean
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
44 45 46 47 48 |
# File 'dependable.rb', line 44 def prune_from_option?(build) return if !optional? && !recommended? build.without?(self) end |
#prune_if_build_and_not_dependent?(dependent, formula = nil) ⇒ Boolean
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
50 51 52 53 54 55 |
# File 'dependable.rb', line 50 def prune_if_build_and_not_dependent?(dependent, formula = nil) return false unless build? return dependent.installed? unless formula dependent != formula end |
#recommended? ⇒ Boolean
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
24 25 26 |
# File 'dependable.rb', line 24 def recommended? .include? :recommended end |
#required? ⇒ Boolean
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
32 33 34 |
# File 'dependable.rb', line 32 def required? !build? && !test? && !optional? && !recommended? end |
#test? ⇒ Boolean
This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.
28 29 30 |
# File 'dependable.rb', line 28 def test? .include? :test end |