mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
Move and re-namespace HeadVersion
This commit is contained in:
parent
a237a1ff9f
commit
c0092c2fd2
@ -2,6 +2,7 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require "pkg_version"
|
||||
require "version/head"
|
||||
require "version/null"
|
||||
require "version/parser"
|
||||
|
||||
@ -676,34 +677,3 @@ class Version
|
||||
version.scan(SCAN_PATTERN).map { |token| Token.create(T.cast(token, String)) }
|
||||
end
|
||||
end
|
||||
|
||||
# A formula's HEAD version.
|
||||
# @see https://docs.brew.sh/Formula-Cookbook#unstable-versions-head Unstable versions (head)
|
||||
#
|
||||
# @api private
|
||||
class HeadVersion < Version
|
||||
extend T::Sig
|
||||
|
||||
sig { returns(T.nilable(String)) }
|
||||
attr_reader :commit
|
||||
|
||||
def initialize(*)
|
||||
super
|
||||
@commit = @version[/^HEAD-(.+)$/, 1]
|
||||
end
|
||||
|
||||
sig { params(commit: T.nilable(String)).void }
|
||||
def update_commit(commit)
|
||||
@commit = commit
|
||||
@version = if commit
|
||||
"HEAD-#{commit}"
|
||||
else
|
||||
"HEAD"
|
||||
end
|
||||
end
|
||||
|
||||
sig { returns(T::Boolean) }
|
||||
def head?
|
||||
true
|
||||
end
|
||||
end
|
||||
|
36
Library/Homebrew/version/head.rb
Normal file
36
Library/Homebrew/version/head.rb
Normal file
@ -0,0 +1,36 @@
|
||||
# typed: true
|
||||
# frozen_string_literal: true
|
||||
|
||||
class Version
|
||||
# A formula's HEAD version.
|
||||
# @see https://docs.brew.sh/Formula-Cookbook#unstable-versions-head Unstable versions (head)
|
||||
#
|
||||
# @api private
|
||||
class HeadVersion < Version
|
||||
extend T::Sig
|
||||
|
||||
sig { returns(T.nilable(String)) }
|
||||
attr_reader :commit
|
||||
|
||||
def initialize(*)
|
||||
super
|
||||
@commit = @version[/^HEAD-(.+)$/, 1]
|
||||
end
|
||||
|
||||
sig { params(commit: T.nilable(String)).void }
|
||||
def update_commit(commit)
|
||||
@commit = commit
|
||||
@version = if commit
|
||||
"HEAD-#{commit}"
|
||||
else
|
||||
"HEAD"
|
||||
end
|
||||
end
|
||||
|
||||
sig { returns(T::Boolean) }
|
||||
def head?
|
||||
true
|
||||
end
|
||||
end
|
||||
|
||||
end
|
Loading…
x
Reference in New Issue
Block a user