mirror of
https://github.com/sparkle-project/sparkle-project.github.io.git
synced 2025-11-01 15:35:08 +00:00
376 lines
20 KiB
HTML
376 lines
20 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<title>SUStandardVersionComparator Class Reference</title>
|
|
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
|
|
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
|
|
<meta charset='utf-8'>
|
|
<meta name="viewport" content="width=device-width, viewport-fit=cover, initial-scale=1.0" />
|
|
<script src="../js/jquery.min.js" defer></script>
|
|
<script src="../js/jazzy.js" defer></script>
|
|
|
|
</head>
|
|
<body>
|
|
<a name="//apple_ref/objc/Class/SUStandardVersionComparator" class="dashAnchor"></a>
|
|
<a title="SUStandardVersionComparator Class Reference"></a>
|
|
<header>
|
|
<div class="content-wrapper">
|
|
<p>
|
|
<a href="../index.html">Sparkle 2.7.1 Docs</a>
|
|
<span class="no-mobile"> (59% documented)</span>
|
|
</p>
|
|
|
|
|
|
</div>
|
|
</header>
|
|
<div id="breadcrumbs-container">
|
|
<div class="content-wrapper">
|
|
<p id="breadcrumbs">
|
|
<span class="no-mobile">
|
|
<a href="../index.html">Sparkle</a>
|
|
<img id="carat" src="../img/carat.png" alt=""/>
|
|
<a href="../Classes.html">Classes</a>
|
|
<img id="carat" src="../img/carat.png" alt=""/>
|
|
SUStandardVersionComparator Class Reference
|
|
</span>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<div class="wrapper">
|
|
<div class="article-wrapper">
|
|
<article class="main-content">
|
|
<section>
|
|
<section class="section">
|
|
<h1>SUStandardVersionComparator</h1>
|
|
<div class="declaration">
|
|
<div class="language">
|
|
<p class="aside-title">Objective-C</p>
|
|
<pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">SUStandardVersionComparator</span> <span class="p">:</span> <span class="nc">NSObject</span> <span class="o"><</span><span class="n"><a href="../Protocols/SUVersionComparison.html">SUVersionComparison</a></span><span class="o">></span></code></pre>
|
|
|
|
</div>
|
|
<div class="language">
|
|
<p class="aside-title">Swift</p>
|
|
<pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">SUStandardVersionComparator</span> <span class="p">:</span> <span class="kt">NSObject</span><span class="p">,</span> <span class="kt"><a href="../Protocols/SUVersionComparison.html">SUVersionComparison</a></span></code></pre>
|
|
|
|
</div>
|
|
</div>
|
|
<p>Sparkle’s default version comparator.</p>
|
|
|
|
<p>This comparator is adapted from MacPAD, by Kevin Ballard.
|
|
It’s “dumb” in that it does essentially string comparison,
|
|
in components split by character type.</p>
|
|
|
|
</section>
|
|
<section class="section task-group-section">
|
|
<div class="task-group">
|
|
<ul>
|
|
<li class="item">
|
|
<div>
|
|
<code>
|
|
<a name="/c:objc(cs)SUStandardVersionComparator(im)init"></a>
|
|
<a name="//apple_ref/objc/Method/-init" class="dashAnchor"></a>
|
|
<a class="token" href="#/c:objc(cs)SUStandardVersionComparator(im)init">-init</a>
|
|
</code>
|
|
</div>
|
|
<div class="height-container">
|
|
<div class="pointer-container"></div>
|
|
<section class="section">
|
|
<div class="pointer"></div>
|
|
<div class="abstract">
|
|
<p>Initializes a new instance of the standard version comparator.</p>
|
|
|
|
</div>
|
|
<div class="declaration">
|
|
<h4>Declaration</h4>
|
|
<div class="language">
|
|
<p class="aside-title">Objective-C</p>
|
|
<pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="n">init</span><span class="p">;</span></code></pre>
|
|
|
|
</div>
|
|
<div class="language">
|
|
<p class="aside-title">Swift</p>
|
|
<pre class="highlight swift"><code><span class="nf">init</span><span class="p">()</span></code></pre>
|
|
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
</li>
|
|
<li class="item">
|
|
<div>
|
|
<code>
|
|
<a name="/c:objc(cs)SUStandardVersionComparator(cpy)defaultComparator"></a>
|
|
<a name="//apple_ref/objc/Property/defaultComparator" class="dashAnchor"></a>
|
|
<a class="token" href="#/c:objc(cs)SUStandardVersionComparator(cpy)defaultComparator">defaultComparator</a>
|
|
</code>
|
|
</div>
|
|
<div class="height-container">
|
|
<div class="pointer-container"></div>
|
|
<section class="section">
|
|
<div class="pointer"></div>
|
|
<div class="abstract">
|
|
<p>A singleton instance of the comparator.</p>
|
|
|
|
</div>
|
|
<div class="declaration">
|
|
<h4>Declaration</h4>
|
|
<div class="language">
|
|
<p class="aside-title">Objective-C</p>
|
|
<pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">class</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">SUStandardVersionComparator</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">defaultComparator</span><span class="p">;</span></code></pre>
|
|
|
|
</div>
|
|
<div class="language">
|
|
<p class="aside-title">Swift</p>
|
|
<pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">var</span> <span class="p">`</span><span class="nv">default</span><span class="p">`:</span> <span class="kt">SUStandardVersionComparator</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
|
|
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
</li>
|
|
<li class="item">
|
|
<div>
|
|
<code>
|
|
<a name="/c:objc(cs)SUStandardVersionComparator(im)compareVersion:toVersion:"></a>
|
|
<a name="//apple_ref/objc/Method/-compareVersion:toVersion:" class="dashAnchor"></a>
|
|
<a class="token" href="#/c:objc(cs)SUStandardVersionComparator(im)compareVersion:toVersion:">-compareVersion:<wbr>toVersion:<wbr></a>
|
|
</code>
|
|
</div>
|
|
<div class="height-container">
|
|
<div class="pointer-container"></div>
|
|
<section class="section">
|
|
<div class="pointer"></div>
|
|
<div class="abstract">
|
|
<p>Compares two version strings through textual analysis.</p>
|
|
|
|
<p>These version strings should be in the format of x, x.y, or x.y.z where each component is a number.
|
|
For example, valid version strings include “1.5.3”, “500”, or “4000.1”
|
|
These versions that are compared correspond to the <code>CFBundleVersion</code> values of the updates.</p>
|
|
|
|
</div>
|
|
<div class="declaration">
|
|
<h4>Declaration</h4>
|
|
<div class="language">
|
|
<p class="aside-title">Objective-C</p>
|
|
<pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSComparisonResult</span><span class="p">)</span><span class="nf">compareVersion</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">versionA</span>
|
|
<span class="nf">toVersion</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">versionB</span><span class="p">;</span></code></pre>
|
|
|
|
</div>
|
|
<div class="language">
|
|
<p class="aside-title">Swift</p>
|
|
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">compareVersion</span><span class="p">(</span><span class="n">_</span> <span class="nv">versionA</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">toVersion</span> <span class="nv">versionB</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-></span> <span class="kt">ComparisonResult</span></code></pre>
|
|
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<h4>Parameters</h4>
|
|
<table class="graybox">
|
|
<tbody>
|
|
<tr>
|
|
<td>
|
|
<code>
|
|
<em>versionA</em>
|
|
</code>
|
|
</td>
|
|
<td>
|
|
<div>
|
|
<p>The first version string to compare.</p>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<code>
|
|
<em>versionB</em>
|
|
</code>
|
|
</td>
|
|
<td>
|
|
<div>
|
|
<p>The second version string to compare.</p>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div>
|
|
<h4>Return Value</h4>
|
|
<p>A comparison result between <code>versionA</code> and <code>versionB</code></p>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</section>
|
|
</section>
|
|
</article>
|
|
</div>
|
|
<div class="nav-wrapper">
|
|
<nav class="nav-bottom">
|
|
<ul class="nav-groups">
|
|
<li class="nav-group-name">
|
|
<a href="../Classes.html">Classes</a>
|
|
<ul class="nav-group-tasks">
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SPUDownloadData.html">SPUDownloadData</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SPUStandardUpdaterController.html">SPUStandardUpdaterController</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SPUStandardUserDriver.html">SPUStandardUserDriver</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SPUUpdatePermissionRequest.html">SPUUpdatePermissionRequest</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SPUUpdater.html">SPUUpdater</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SPUUpdaterSettings.html">SPUUpdaterSettings</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SPUUserUpdateState.html">SPUUserUpdateState</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SUAppcast.html">SUAppcast</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SUAppcastItem.html">SUAppcastItem</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SUStandardVersionComparator.html">SUStandardVersionComparator</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SUUpdatePermissionResponse.html">SUUpdatePermissionResponse</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Classes/SUUpdater.html">SUUpdater</a>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li class="nav-group-name">
|
|
<a href="../Constants.html">Constants</a>
|
|
<ul class="nav-group-tasks">
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SPULatestAppcastItemFoundKey">SPULatestAppcastItemFoundKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SPUNoUpdateFoundReasonKey">SPUNoUpdateFoundReasonKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SPUNoUpdateFoundUserInitiatedKey">SPUNoUpdateFoundUserInitiatedKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSparkleErrorDomain">SUSparkleErrorDomain</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerApplicationNameKey">SUSystemProfilerApplicationNameKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerApplicationVersionKey">SUSystemProfilerApplicationVersionKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerCPU64bitKey">SUSystemProfilerCPU64bitKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerCPUCountKey">SUSystemProfilerCPUCountKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerCPUFrequencyKey">SUSystemProfilerCPUFrequencyKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerCPUSubtypeKey">SUSystemProfilerCPUSubtypeKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerCPUTypeKey">SUSystemProfilerCPUTypeKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerHardwareModelKey">SUSystemProfilerHardwareModelKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerMemoryKey">SUSystemProfilerMemoryKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerOperatingSystemVersionKey">SUSystemProfilerOperatingSystemVersionKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUSystemProfilerPreferredLanguageKey">SUSystemProfilerPreferredLanguageKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUUpdaterAppcastItemNotificationKey">SUUpdaterAppcastItemNotificationKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUUpdaterAppcastNotificationKey">SUUpdaterAppcastNotificationKey</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUUpdaterDidFindValidUpdateNotification">SUUpdaterDidFindValidUpdateNotification</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUUpdaterDidFinishLoadingAppCastNotification">SUUpdaterDidFinishLoadingAppCastNotification</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUUpdaterDidNotFindUpdateNotification">SUUpdaterDidNotFindUpdateNotification</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Constants.html#/c:@SUUpdaterWillRestartNotification">SUUpdaterWillRestartNotification</a>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li class="nav-group-name">
|
|
<a href="../Enums.html">Enumerations</a>
|
|
<ul class="nav-group-tasks">
|
|
<li class="nav-group-task">
|
|
<a href="../Enums/SPUNoUpdateFoundReason.html">SPUNoUpdateFoundReason</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Enums/SPUUpdateCheck.html">SPUUpdateCheck</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Enums/SPUUserUpdateChoice.html">SPUUserUpdateChoice</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Enums/SPUUserUpdateStage.html">SPUUserUpdateStage</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Enums/SUError.html">SUError</a>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li class="nav-group-name">
|
|
<a href="../Protocols.html">Protocols</a>
|
|
<ul class="nav-group-tasks">
|
|
<li class="nav-group-task">
|
|
<a href="../Protocols/SPUStandardUserDriverDelegate.html">SPUStandardUserDriverDelegate</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Protocols/SPUUpdaterDelegate.html">SPUUpdaterDelegate</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Protocols/SPUUserDriver.html">SPUUserDriver</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Protocols/SUUpdaterDelegate.html">SUUpdaterDelegate</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Protocols/SUVersionComparison.html">SUVersionComparison</a>
|
|
</li>
|
|
<li class="nav-group-task">
|
|
<a href="../Protocols/SUVersionDisplay.html">SUVersionDisplay</a>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</nav>
|
|
</div>
|
|
<div class="footer-wrapper">
|
|
<section id="footer">
|
|
<p>© 2025 <a class="link" href="https://sparkle-project.org" target="_blank" rel="external noopener">Sparkle Project</a>. All rights reserved. (Last updated: 2025-06-16)</p>
|
|
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external noopener">jazzy ♪♫ v0.15.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external noopener">Realm</a> project.</p>
|
|
</section>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|