Inline type annotations for Utils::Svn.

This commit is contained in:
Markus Reiter 2020-10-10 15:35:20 +02:00
parent 12e173cd50
commit e1e9f2d9bd
2 changed files with 6 additions and 14 deletions

View File

@ -1,14 +0,0 @@
# typed: strict
module Utils::Svn
include Kernel
sig { returns(T::Boolean) }
def available?; end
sig { returns(T.nilable(String)) }
def version; end
sig { params(url: String).returns(T::Boolean) }
def remote_exists?(url); end
end

View File

@ -8,12 +8,17 @@ module Utils
#
# @api private
module Svn
include Kernel
extend T::Sig
module_function
sig { returns(T::Boolean) }
def available?
version.present?
end
sig { returns(T.nilable(String)) }
def version
return @version if defined?(@version)
@ -21,6 +26,7 @@ module Utils
@version = status.success? ? stdout.chomp[/svn, version (\d+(?:\.\d+)*)/, 1] : nil
end
sig { params(url: String).returns(T::Boolean) }
def remote_exists?(url)
return true unless available?