Document SDK
.
This commit is contained in:
parent
390deeb5ac
commit
3efaf89787
@ -4,6 +4,9 @@ require "os/mac/version"
|
|||||||
|
|
||||||
module OS
|
module OS
|
||||||
module Mac
|
module Mac
|
||||||
|
# Class representing a macOS SDK.
|
||||||
|
#
|
||||||
|
# @api private
|
||||||
class SDK
|
class SDK
|
||||||
attr_reader :version, :path, :source
|
attr_reader :version, :path, :source
|
||||||
|
|
||||||
@ -14,6 +17,9 @@ module OS
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Base class for SDK locators.
|
||||||
|
#
|
||||||
|
# @api private
|
||||||
class BaseSDKLocator
|
class BaseSDKLocator
|
||||||
class NoSDKError < StandardError; end
|
class NoSDKError < StandardError; end
|
||||||
|
|
||||||
@ -42,7 +48,7 @@ module OS
|
|||||||
else
|
else
|
||||||
sdk_for v
|
sdk_for v
|
||||||
end
|
end
|
||||||
rescue BaseSDKLocator::NoSDKError
|
rescue NoSDKError
|
||||||
latest_sdk
|
latest_sdk
|
||||||
end
|
end
|
||||||
# Only return an SDK older than the OS version if it was specifically requested
|
# Only return an SDK older than the OS version if it was specifically requested
|
||||||
@ -79,7 +85,11 @@ module OS
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
private_constant :BaseSDKLocator
|
||||||
|
|
||||||
|
# Helper class for locating the Xcode SDK.
|
||||||
|
#
|
||||||
|
# @api private
|
||||||
class XcodeSDKLocator < BaseSDKLocator
|
class XcodeSDKLocator < BaseSDKLocator
|
||||||
def source
|
def source
|
||||||
:xcode
|
:xcode
|
||||||
@ -100,6 +110,9 @@ module OS
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Helper class for locating the macOS Command Line Tools SDK.
|
||||||
|
#
|
||||||
|
# @api private
|
||||||
class CLTSDKLocator < BaseSDKLocator
|
class CLTSDKLocator < BaseSDKLocator
|
||||||
def source
|
def source
|
||||||
:clt
|
:clt
|
||||||
|
Loading…
x
Reference in New Issue
Block a user