primary static method
Returns the primary version out of versions
.
This is the highest-numbered stable (non-prerelease) version. If there are no stable versions, it's just the highest-numbered version.
If versions
is empty, throws a StateError.
Implementation
static Version primary(List<Version> versions) {
var primary = versions.first;
for (var version in versions.skip(1)) {
if ((!version.isPreRelease && primary.isPreRelease) ||
(version.isPreRelease == primary.isPreRelease && version > primary)) {
primary = version;
}
}
return primary;
}