Модуль: Context Закрытый
- Расширен:
- MonitorMixin
- Включён в:
- AbstractDownloadStrategy, Cask::CaskLoader, Cask::Download, Cleaner, Downloadable, Formula, FormulaVersions, Formulary, Formulary::FormulaLoader, GitHubPackages, GitHubReleases, Homebrew, Homebrew::Assertions, Migrator, ObserverPathnameExtension, SystemCommand, SystemCommand::Result, Utils::Analytics
- Определён в:
- context.rb
Обзор
Этот модуль является частью закрытого API. Этот модуль можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого модуля, так как он может быть удалён или изменён без предупреждения.
Модуль для получения сведений о текущем контексте выполнения.
Определено в пространстве имён
Классы: ContextStruct
Краткое описание методов класса свернуть
- .current ⇒ ContextStruct закрытый
- .current=(context) ⇒ void закрытый
Краткое описание методов экземпляра свернуть
- #debug? ⇒ Boolean закрытый
- #quiet? ⇒ Boolean закрытый
- #verbose? ⇒ Boolean закрытый
- #with_context(debug: debug?, , quiet: quiet?, , verbose: verbose?, , &_block) ⇒ T.untyped закрытый
Подробное описание методов класса
.current ⇒ ContextStruct
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
45 46 47 48 49 50 51 52 53 54 55 | # File 'context.rb', line 45 def self.current current_context = T.cast(Thread.current[:context], T.nilable(ContextStruct)) return current_context if current_context synchronize do current = T.let(@current, T.nilable(ContextStruct)) current ||= ContextStruct.new @current = current current end end |
.current=(context) ⇒ void
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
Этот метод возвращает неопределённое значение.
38 39 40 41 42 | # File 'context.rb', line 38 def self.current=(context) synchronize do @current = context end end |
Подробное описание методов экземпляра
#debug? ⇒ Boolean
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
58 59 60 | # File 'context.rb', line 58 def debug? Context.current.debug? end |
#quiet? ⇒ Boolean
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
63 64 65 | # File 'context.rb', line 63 def quiet? Context.current.quiet? end |
#verbose? ⇒ Boolean
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
68 69 70 | # File 'context.rb', line 68 def verbose? Context.current.verbose? end |
#with_context(debug: debug?, , quiet: quiet?, , verbose: verbose?, , &_block) ⇒ T.untyped
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
76 77 78 79 80 81 82 83 84 85 | # File 'context.rb', line 76 def with_context(debug: debug?, quiet: quiet?, verbose: verbose?, &_block) old_context = Context.current Thread.current[:context] = ContextStruct.new(debug:, quiet:, verbose:) begin yield ensure Thread.current[:context] = old_context end end |
© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/Context.html