Класс: Tapioca::Compilers::Forwardables
- Наследует:
- Dsl::Compiler
- Object
- Dsl::Compiler
- Tapioca::Compilers::Forwardables
- Определён в:
- sorbet/tapioca/compilers/forwardables.rb
Краткое описание констант свернуть
- FORWARDABLE_FILENAME =
"forwardable.rb"- ARRAY_METHODS =
T.let(["to_a", "to_ary"].freeze, T::Array[String])
- HASH_METHODS =
T.let(["to_h", "to_hash"].freeze, T::Array[String])
- STRING_METHODS =
T.let(["to_s", "to_str", "to_json"].freeze, T::Array[String])
- RETURN_TYPE_OVERRIDES =
Эта константа является частью закрытого API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.
Используйте это, чтобы переопределить тип возвращаемого значения метода с делегированием по умолчанию:
T.let({ "::Cask::Cask" => { "on_system_block_min_os" => "T.nilable(MacOSVersion)", "url" => "T.nilable(::Cask::URL)", }, }.freeze, T::Hash[String, T::Hash[String, String]])
- ConstantType =
type_member { { fixed: T::Module[T.anything] } }
Краткое описание методов класса свернуть
Краткое описание методов экземпляра свернуть
- #decorate ⇒ void закрытый
Подробное описание методов класса
.gather_constants ⇒ Enumerable<T::Module[T.anything]>
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
26 27 28 29 30 31 | # File 'sorbet/tapioca/compilers/forwardables.rb', line 26 def self.gather_constants Homebrew::Tapioca::Utils.named_objects_with_module(Forwardable).reject do |obj| # Avoid duplicate stubs for forwardables that are defined in vendored gems Object.const_source_location(T.must(obj.name))&.first&.include?("vendor/bundle/ruby") end end |
Подробное описание методов экземпляра
#decorate ⇒ void
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
Этот метод возвращает неопределённое значение.
34 35 36 37 38 39 40 41 | # File 'sorbet/tapioca/compilers/forwardables.rb', line 34 def decorate root.create_path(constant) do |klass| Homebrew::Tapioca::Utils.methods_from_file(constant, FORWARDABLE_FILENAME) .each { |method| compile_forwardable_method(klass, method) } Homebrew::Tapioca::Utils.methods_from_file(constant, FORWARDABLE_FILENAME, class_methods: true) .each { |method| compile_forwardable_method(klass, method, class_method: true) } end end |
© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/Tapioca/Compilers/Forwardables.html