Class: Homebrew::API::FormulaStruct Private

Inherits:
T::Struct
  • Object
show all
Defined in:
api/formula_struct.rb,
sorbet/rbi/dsl/homebrew/api/formula_struct.rbi

This class is part of a private API. This class may only be used in the Homebrew/brew repository. Third parties should avoid using this class if possible, as it may be removed or changed without warning.

Constant Summary collapse

PREDICATES =

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.

[
  :bottle,
  :deprecated,
  :disabled,
  :head,
  :keg_only,
  :no_autobump_message,
  :pour_bottle,
  :service,
  :service_run,
  :service_name,
  :stable,
].freeze
DependencyArgs =

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.

T.type_alias do
  T.any(
    # Formula name: "foo"
    String,
    # Formula name and dependency type: { "foo" => :build }
    T::Hash[String, Symbol],
  )
end
RequirementArgs =

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.

T.type_alias do
  T.any(
    # Requirement name: :macos
    Symbol,
    # Requirement name and other info: { macos: :build }
    T::Hash[Symbol, T::Array[T.anything]],
  )
end
UsesFromMacOSArgs =

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.

T.type_alias do
  [
    T.any(
      # Formula name: "foo"
      String,
      # Formula name and dependency type: { "foo" => :build }
      # Formula name, dependency type, and version bounds: { "foo" => :build, since: :catalina }
      T::Hash[T.any(String, Symbol), T.any(Symbol, T::Array[Symbol])],
    ),
    # If the first argument is only a name, this argument contains the version bounds: { since: :catalina }
    T::Hash[Symbol, Symbol],
  ]
end

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(aliases: [], bottle: {}, bottle_checksums: [], bottle_rebuild: 0, caveats: nil, conflicts: [], deprecate_args: {}, desc:, disable_args: {}, head_url_args:, homepage:, keg_only_args: [], license:, link_overwrite_paths: [], no_autobump_args: {}, oldnames: [], post_install_defined: true, pour_bottle_args: {}, revision: 0, ruby_source_checksum:, ruby_source_path:, service_args: [], service_name_args: {}, service_run_args: [], service_run_kwargs: {}, stable_checksum: nil, stable_url_args:, stable_version:, tap_git_head:, version_scheme: 0, versioned_formulae: [], stable_dependency_hash: {}, head_dependency_hash: {}, requirements_array: []) ⇒ void

Parameters:



# File ''

const :aliases, T::Array[String], default: []
const :bottle, T::Hash[String, T.anything], default: {}
const :bottle_checksums, T::Array[T::Hash[String, T.anything]], default: []
const :bottle_rebuild, Integer, default: 0
const :caveats, T.nilable(String)
const :conflicts, T::Array[[String, T::Hash[Symbol, String]]], default: []
const :deprecate_args, T::Hash[Symbol, T.nilable(T.any(String, Symbol))], default: {}
const :desc, String
const :disable_args, T::Hash[Symbol, T.nilable(T.any(String, Symbol))], default: {}
const :head_url_args, [String, T::Hash[Symbol, T.anything]]
const :homepage, String
const :keg_only_args, T::Array[T.any(String, Symbol)], default: []
const :license, SPDX::LicenseExpression
const :link_overwrite_paths, T::Array[String], default: []
const :no_autobump_args, T::Hash[Symbol, T.any(String, Symbol)], default: {}
const :oldnames, T::Array[String], default: []
const :post_install_defined, T::Boolean, default: true
const :pour_bottle_args, T::Hash[Symbol, Symbol], default: {}
const :revision, Integer, default: 0
const :ruby_source_checksum, String
const :ruby_source_path, String
const :service_args, T::Array[[Symbol, BasicObject]], default: []
const :service_name_args, T::Hash[Symbol, String], default: {}
const :service_run_args, T::Array[Homebrew::Service::RunParam], default: []
const :service_run_kwargs, T::Hash[Symbol, Homebrew::Service::RunParam], default: {}
const :stable_checksum, T.nilable(String)
const :stable_url_args, [String, T::Hash[Symbol, T.anything]]
const :stable_version, String
const :tap_git_head, String
const :version_scheme, Integer, default: 0
const :versioned_formulae, T::Array[String], default: []
const :stable_dependency_hash, T::Hash[String, T::Array[String]], default: {}
const :head_dependency_hash, T::Hash[String, T::Array[String]], default: {}
const :requirements_array, T::Array[T::Hash[String, T.untyped]], default: []

Instance Attribute Details

#aliasesArray<String> (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.

Changes to this struct must be mirrored in Homebrew::API::Formula.generate_formula_struct_hash

Returns:



# File ''

const :aliases, T::Array[String], default: []

#bottleHash{String => T.anything} (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.

Returns the value of prop bottle.

Returns:



# File ''

const :bottle, T::Hash[String, T.anything], default: {}

#bottle_checksumsArray<Hash{String => T.anything}> (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.

Returns the value of prop bottle_checksums.

Returns:



# File ''

const :bottle_checksums, T::Array[T::Hash[String, T.anything]], default: []

#bottle_rebuildInteger (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.

Returns the value of prop bottle_rebuild.

Returns:

  • (Integer)


# File ''

const :bottle_rebuild, Integer, default: 0

#caveatsString? (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.

Returns the value of prop caveats.

Returns:



# File ''

const :caveats, T.nilable(String)

#conflictsArray<Array<(String, Hash{Symbol => String})>> (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.

Returns the value of prop conflicts.

Returns:



# File ''

const :conflicts, T::Array[[String, T::Hash[Symbol, String]]], default: []

#deprecate_argsHash{Symbol => String, Symbol, nil} (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.

Returns the value of prop deprecate_args.

Returns:



# File ''

const :deprecate_args, T::Hash[Symbol, T.nilable(T.any(String, Symbol))], default: {}

#descString (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.

Returns the value of prop desc.

Returns:



# File ''

const :desc, String

#disable_argsHash{Symbol => String, Symbol, nil} (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.

Returns the value of prop disable_args.

Returns:



# File ''

const :disable_args, T::Hash[Symbol, T.nilable(T.any(String, Symbol))], default: {}

#head_dependency_hashHash{String => Array<String>} (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.

Returns the value of prop head_dependency_hash.

Returns:



# File ''

const :head_dependency_hash, T::Hash[String, T::Array[String]], default: {}

#head_url_argsArray<(String, Hash{Symbol => T.anything})> (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.

Returns the value of prop head_url_args.

Returns:



# File ''

const :head_url_args, [String, T::Hash[Symbol, T.anything]]

#homepageString (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.

Returns the value of prop homepage.

Returns:



# File ''

const :homepage, String

#keg_only_argsArray<String, Symbol> (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.

Returns the value of prop keg_only_args.

Returns:



# File ''

const :keg_only_args, T::Array[T.any(String, Symbol)], default: []

#licenseSPDX::LicenseExpression (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.

Returns the value of prop license.



# File ''

const :license, SPDX::LicenseExpression

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 the value of prop link_overwrite_paths.

Returns:



# File ''

const :link_overwrite_paths, T::Array[String], default: []

#no_autobump_argsHash{Symbol => String, Symbol} (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.

Returns the value of prop no_autobump_args.

Returns:



# File ''

const :no_autobump_args, T::Hash[Symbol, T.any(String, Symbol)], default: {}

#oldnamesArray<String> (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.

Returns the value of prop oldnames.

Returns:



# File ''

const :oldnames, T::Array[String], default: []

#post_install_definedBoolean (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.

Returns the value of prop post_install_defined.

Returns:

  • (Boolean)


# File ''

const :post_install_defined, T::Boolean, default: true

#pour_bottle_argsHash{Symbol => Symbol} (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.

Returns the value of prop pour_bottle_args.

Returns:



# File ''

const :pour_bottle_args, T::Hash[Symbol, Symbol], default: {}

#requirements_arrayArray<Hash{String => T.untyped}> (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.

Returns the value of prop requirements_array.

Returns:



# File ''

const :requirements_array, T::Array[T::Hash[String, T.untyped]], default: []

#revisionInteger (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.

Returns the value of prop revision.

Returns:

  • (Integer)


# File ''

const :revision, Integer, default: 0

#ruby_source_checksumString (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.

Returns the value of prop ruby_source_checksum.

Returns:



# File ''

const :ruby_source_checksum, String

#ruby_source_pathString (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.

Returns the value of prop ruby_source_path.

Returns:



# File ''

const :ruby_source_path, String

#service_argsArray<Array<(Symbol, BasicObject)>> (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.

Returns the value of prop service_args.

Returns:



# File ''

const :service_args, T::Array[[Symbol, BasicObject]], default: []

#service_name_argsHash{Symbol => String} (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.

Returns the value of prop service_name_args.

Returns:



# File ''

const :service_name_args, T::Hash[Symbol, String], default: {}

#service_run_argsArray<Homebrew::Service::RunParam> (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.

Returns the value of prop service_run_args.



# File ''

const :service_run_args, T::Array[Homebrew::Service::RunParam], default: []

#service_run_kwargsHash{Symbol => Homebrew::Service::RunParam} (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.

Returns the value of prop service_run_kwargs.



# File ''

const :service_run_kwargs, T::Hash[Symbol, Homebrew::Service::RunParam], default: {}

#stable_checksumString? (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.

Returns the value of prop stable_checksum.

Returns:



# File ''

const :stable_checksum, T.nilable(String)

#stable_dependency_hashHash{String => Array<String>} (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.

Returns the value of prop stable_dependency_hash.

Returns:



# File ''

const :stable_dependency_hash, T::Hash[String, T::Array[String]], default: {}

#stable_url_argsArray<(String, Hash{Symbol => T.anything})> (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.

Returns the value of prop stable_url_args.

Returns:



# File ''

const :stable_url_args, [String, T::Hash[Symbol, T.anything]]

#stable_versionString (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.

Returns the value of prop stable_version.

Returns:



# File ''

const :stable_version, String

#tap_git_headString (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.

Returns the value of prop tap_git_head.

Returns:



# File ''

const :tap_git_head, String

#version_schemeInteger (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.

Returns the value of prop version_scheme.

Returns:

  • (Integer)


# File ''

const :version_scheme, Integer, default: 0

#versioned_formulaeArray<String> (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.

Returns the value of prop versioned_formulae.

Returns:



# File ''

const :versioned_formulae, T::Array[String], default: []

Instance Method Details

#bottle?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)


10
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 10

def bottle?; end

#deprecated?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)


13
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 13

def deprecated?; end

#disabled?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)


16
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 16

def disabled?; end

#head?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)


19
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 19

def head?; end

#head_dependenciesArray<DependencyArgs, RequirementArgs>

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.



105
106
107
# File 'api/formula_struct.rb', line 105

def head_dependencies
  spec_dependencies(:head) + spec_requirements(:head)
end

#head_uses_from_macosArray<UsesFromMacOSArgs>

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:



115
116
117
# File 'api/formula_struct.rb', line 115

def head_uses_from_macos
  spec_uses_from_macos(:head)
end

#keg_only?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)


22
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 22

def keg_only?; end

#no_autobump_message?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)


25
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 25

def no_autobump_message?; end

#pour_bottle?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)


28
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 28

def pour_bottle?; end

#service?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)


31
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 31

def service?; end

#service_name?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)


34
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 34

def service_name?; end

#service_run?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)


37
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 37

def service_run?; end

#stable?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)


40
# File 'sorbet/rbi/dsl/homebrew/api/formula_struct.rbi', line 40

def stable?; end

#stable_dependenciesArray<DependencyArgs, RequirementArgs>

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.



110
111
112
# File 'api/formula_struct.rb', line 110

def stable_dependencies
  spec_dependencies(:stable) + spec_requirements(:stable)
end

#stable_uses_from_macosArray<UsesFromMacOSArgs>

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:



120
121
122
# File 'api/formula_struct.rb', line 120

def stable_uses_from_macos
  spec_uses_from_macos(:stable)
end