Try non-nil params
This commit is contained in:
parent
6c18f5c265
commit
899a6c5977
@ -23,7 +23,7 @@ module Homebrew
|
||||
PROCESS_TYPE_ADAPTIVE = :adaptive
|
||||
|
||||
KEEP_ALIVE_KEYS = [:always, :successful_exit, :crashed, :path].freeze
|
||||
SOCKET_STRING_REGEX = %r{^([a-z]+)://(.+):([0-9]+)$}i
|
||||
SOCKET_STRING_REGEX = %r{^(?<type>[a-z]+)://(?<host>.+):(?<port>[0-9]+)$}i
|
||||
|
||||
RunParam = T.type_alias { T.nilable(T.any(T::Array[T.any(String, Pathname)], String, Pathname)) }
|
||||
Sockets = T.type_alias { T::Hash[Symbol, { host: String, port: String, type: String }] }
|
||||
@ -107,8 +107,8 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(path: T.nilable(T.any(String, Pathname))).returns(T.nilable(String)) }
|
||||
def working_dir(path = nil)
|
||||
sig { params(path: T.any(String, Pathname)).returns(T.nilable(String)) }
|
||||
def working_dir(path = T.unsafe(nil))
|
||||
if path
|
||||
@working_dir = path.to_s
|
||||
else
|
||||
@ -116,8 +116,8 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(path: T.nilable(T.any(String, Pathname))).returns(T.nilable(String)) }
|
||||
def root_dir(path = nil)
|
||||
sig { params(path: T.any(String, Pathname)).returns(T.nilable(String)) }
|
||||
def root_dir(path = T.unsafe(nil))
|
||||
if path
|
||||
@root_dir = path.to_s
|
||||
else
|
||||
@ -125,8 +125,8 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(path: T.nilable(T.any(String, Pathname))).returns(T.nilable(String)) }
|
||||
def input_path(path = nil)
|
||||
sig { params(path: T.any(String, Pathname)).returns(T.nilable(String)) }
|
||||
def input_path(path = T.unsafe(nil))
|
||||
if path
|
||||
@input_path = path.to_s
|
||||
else
|
||||
@ -134,8 +134,8 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(path: T.nilable(T.any(String, Pathname))).returns(T.nilable(String)) }
|
||||
def log_path(path = nil)
|
||||
sig { params(path: T.any(String, Pathname)).returns(T.nilable(String)) }
|
||||
def log_path(path = T.unsafe(nil))
|
||||
if path
|
||||
@log_path = path.to_s
|
||||
else
|
||||
@ -143,8 +143,8 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(path: T.nilable(T.any(String, Pathname))).returns(T.nilable(String)) }
|
||||
def error_log_path(path = nil)
|
||||
sig { params(path: T.any(String, Pathname)).returns(T.nilable(String)) }
|
||||
def error_log_path(path = T.unsafe(nil))
|
||||
if path
|
||||
@error_log_path = path.to_s
|
||||
else
|
||||
@ -153,10 +153,10 @@ module Homebrew
|
||||
end
|
||||
|
||||
sig {
|
||||
params(value: T.nilable(T.any(T::Boolean, T::Hash[Symbol, T.untyped])))
|
||||
params(value: T.any(T::Boolean, T::Hash[Symbol, T.untyped]))
|
||||
.returns(T.nilable(T::Hash[Symbol, T.untyped]))
|
||||
}
|
||||
def keep_alive(value = nil)
|
||||
def keep_alive(value = T.unsafe(nil))
|
||||
case value
|
||||
when nil
|
||||
@keep_alive
|
||||
@ -171,8 +171,8 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(value: T.nilable(T::Boolean)).returns(T::Boolean) }
|
||||
def require_root(value = nil)
|
||||
sig { params(value: T::Boolean).returns(T::Boolean) }
|
||||
def require_root(value = T.unsafe(nil))
|
||||
if value.nil?
|
||||
@require_root
|
||||
else
|
||||
@ -186,8 +186,8 @@ module Homebrew
|
||||
@require_root.present? && @require_root == true
|
||||
end
|
||||
|
||||
sig { params(value: T.nilable(T::Boolean)).returns(T.nilable(T::Boolean)) }
|
||||
def run_at_load(value = nil)
|
||||
sig { params(value: T::Boolean).returns(T.nilable(T::Boolean)) }
|
||||
def run_at_load(value = T.unsafe(nil))
|
||||
if value.nil?
|
||||
@run_at_load
|
||||
else
|
||||
@ -196,32 +196,30 @@ module Homebrew
|
||||
end
|
||||
|
||||
sig {
|
||||
params(value: T.nilable(T.any(String, T::Hash[Symbol, String])))
|
||||
params(value: T.any(String, T::Hash[Symbol, String]))
|
||||
.returns(T::Hash[Symbol, T::Hash[Symbol, String]])
|
||||
}
|
||||
def sockets(value = nil)
|
||||
def sockets(value = T.unsafe(nil))
|
||||
return @sockets if value.nil?
|
||||
|
||||
@sockets = case value
|
||||
value_hash = case value
|
||||
when String
|
||||
{ listeners: value }
|
||||
when Hash
|
||||
value
|
||||
end.transform_values do |socket_string|
|
||||
end
|
||||
|
||||
@sockets = T.must(value_hash).transform_values do |socket_string|
|
||||
match = socket_string.match(SOCKET_STRING_REGEX)
|
||||
raise TypeError, "Service#sockets a formatted socket definition as <type>://<host>:<port>" unless match
|
||||
|
||||
type = T.must(match[1])
|
||||
host = T.must(match[2])
|
||||
port = T.must(match[3])
|
||||
|
||||
begin
|
||||
IPAddr.new(host)
|
||||
IPAddr.new(match[:host])
|
||||
rescue IPAddr::InvalidAddressError
|
||||
raise TypeError, "Service#sockets expects a valid ipv4 or ipv6 host address"
|
||||
end
|
||||
|
||||
{ host:, port:, type: }
|
||||
{ host: match[:host], port: match[:port], type: match[:type] }
|
||||
end
|
||||
end
|
||||
|
||||
@ -231,8 +229,8 @@ module Homebrew
|
||||
!@keep_alive.empty? && @keep_alive[:always] != false
|
||||
end
|
||||
|
||||
sig { params(value: T.nilable(T::Boolean)).returns(T::Boolean) }
|
||||
def launch_only_once(value = nil)
|
||||
sig { params(value: T::Boolean).returns(T::Boolean) }
|
||||
def launch_only_once(value = T.unsafe(nil))
|
||||
if value.nil?
|
||||
@launch_only_once
|
||||
else
|
||||
@ -240,17 +238,17 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(value: T.nilable(Integer)).returns(T.nilable(Integer)) }
|
||||
def restart_delay(value = nil)
|
||||
if restart_delay
|
||||
sig { params(value: Integer).returns(T.nilable(Integer)) }
|
||||
def restart_delay(value = T.unsafe(nil))
|
||||
if value
|
||||
@restart_delay = value
|
||||
else
|
||||
@restart_delay
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(value: T.nilable(Symbol)).returns(T.nilable(Symbol)) }
|
||||
def process_type(value = nil)
|
||||
sig { params(value: Symbol).returns(T.nilable(Symbol)) }
|
||||
def process_type(value = T.unsafe(nil))
|
||||
case value
|
||||
when nil
|
||||
@process_type
|
||||
@ -263,8 +261,8 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(value: T.nilable(Symbol)).returns(T.nilable(Symbol)) }
|
||||
def run_type(value = nil)
|
||||
sig { params(value: Symbol).returns(T.nilable(Symbol)) }
|
||||
def run_type(value = T.unsafe(nil))
|
||||
case value
|
||||
when nil
|
||||
@run_type
|
||||
@ -275,8 +273,8 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(value: T.nilable(Integer)).returns(T.nilable(Integer)) }
|
||||
def interval(value = nil)
|
||||
sig { params(value: Integer).returns(T.nilable(Integer)) }
|
||||
def interval(value = T.unsafe(nil))
|
||||
if value
|
||||
@interval = value
|
||||
else
|
||||
@ -284,8 +282,8 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
|
||||
sig { params(value: T.nilable(String)).returns(T::Hash[Symbol, T.any(Integer, String)]) }
|
||||
def cron(value = nil)
|
||||
sig { params(value: String).returns(T::Hash[Symbol, T.any(Integer, String)]) }
|
||||
def cron(value = T.unsafe(nil))
|
||||
if value
|
||||
@cron = parse_cron(value)
|
||||
else
|
||||
@ -344,8 +342,8 @@ module Homebrew
|
||||
@environment_variables = variables.transform_values(&:to_s)
|
||||
end
|
||||
|
||||
sig { params(value: T.nilable(T::Boolean)).returns(T::Boolean) }
|
||||
def macos_legacy_timers(value = nil)
|
||||
sig { params(value: T::Boolean).returns(T::Boolean) }
|
||||
def macos_legacy_timers(value = T.unsafe(nil))
|
||||
if value.nil?
|
||||
@macos_legacy_timers
|
||||
else
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user