Class: AbstractCoreTap Abstract

Inherits:
Tap show all
Extended by:
T::Helpers
Defined in:
tap.rb

Overview

This class is abstract.

It cannot be directly instantiated. Subclasses must implement the abstract methods below.

Direct Known Subclasses

CoreCaskTap, CoreTap

Constant Summary collapse

Elem =
type_member(:out) { { fixed: Tap } }

Constants inherited from Tap

Tap::HOMEBREW_TAP_JSON_FILES

Instance Attribute Summary

Attributes inherited from Tap

#full_name, #git_repository, #name, #path, #repository, #user

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Tap

#alias_dir, #alias_file_to_name, #alias_files, #alias_reverse_table, #alias_table, #aliases, all, #allow_bump?, #allowed_by_env?, allowed_taps, #audit_exception, #audit_exceptions, #autobump, #cask_dir, #cask_file?, #cask_files, #cask_files_by_name, #cask_renames, #cask_reverse_renames, #cask_tokens, #clear_cache, #command_dir, #command_files, #config, #contents, #core_cask_tap?, #core_tap?, core_taps, #custom_remote?, #default_remote, each, fetch, #fix_remote_configuration, #forbidden_by_env?, forbidden_taps, #formula_dir, #formula_file?, #formula_files, #formula_files_by_name, #formula_names, #formula_renames, #formula_reverse_renames, from_path, #git?, #git_branch, #git_head, #git_last_commit, #initialize, #install, installed, #installed?, #issues_url, #link_completions_and_manpages, #new_cask_path, #new_formula_path, #official?, #potential_formula_dirs, #prefix_to_versioned_formulae_names, #private?, #pypi_formula_mappings, #relative_cask_path, #remote, #remote_repository, #repository_var_suffix, #reverse_tap_migrations_renames, #shallow?, #style_exceptions, #synced_versions_formulae, tap_migration_oldnames, #tap_migrations, #to_hash, #uninstall, untapped_official_taps, with_cask_token, with_formula_name

Methods included from Enumerable

#compact_blank, #exclude?

Methods included from Cachable

#cache, #clear_cache

Constructor Details

This class inherits a constructor from Tap

Class Method Details

.instanceT.attached_class

This method is part of an internal API. This method may only be used internally in repositories owned by Homebrew, except in casks or formulae. Third parties should avoid using this method if possible, as it may be removed or changed without warning.

Get the singleton instance for this Tap.

Returns:

  • (T.attached_class)


1253
1254
1255
# File 'tap.rb', line 1253

def self.instance
  @instance ||= T.let(T.unsafe(self).new, T.nilable(T.attached_class))
end

Instance Method Details

#ensure_installed!void

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.

This method returns an undefined value.



1258
1259
1260
1261
1262
1263
# File 'tap.rb', line 1258

def ensure_installed!
  return unless Homebrew::EnvConfig.no_install_from_api?
  return if Homebrew::EnvConfig.automatically_set_no_install_from_api?

  super
end

#formula_file_to_name(file) ⇒ String

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.

Parameters:

Returns:



1266
1267
1268
# File 'tap.rb', line 1266

def formula_file_to_name(file)
  file.basename(".rb").to_s
end

#should_report_analytics?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.

Returns:

  • (Boolean)


1271
1272
1273
1274
1275
# File 'tap.rb', line 1271

def should_report_analytics?
  return super if Homebrew::EnvConfig.no_install_from_api?

  true
end