bumpPrerelease method

SemVer bumpPrerelease()

Implementation

SemVer bumpPrerelease() {
  if (preRelease == null || preRelease!.isEmpty) {
    return copyWith(preRelease: 'alpha.1');
  }

  // If the prerelease ends with a number, increment it.
  final segments = preRelease!.split('.');
  final last = segments.last;
  final number = int.tryParse(last);

  if (number != null) {
    segments[segments.length - 1] = '${number + 1}';
    return copyWith(preRelease: segments.join('.'));
  }

  return copyWith(preRelease: '$preRelease.1');
}