From 2de5098f348efd1f4e5fa6848249310806cfe371 Mon Sep 17 00:00:00 2001 From: Nathan Fisher Date: Mon, 12 Feb 2024 19:09:13 -0500 Subject: [PATCH] Simplification in `parsePreRelease` --- semver.c | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/semver.c b/semver.c index e09450a..b52e869 100644 --- a/semver.c +++ b/semver.c @@ -160,16 +160,19 @@ int parsePreRelease(PreRelease *pr, char *s) { vp = s + 5; if (parseU12NonZero(vp, &val) != 0) return 1; + pr->alpha = (uint16_t)val; } else if (strncasecmp(s, "beta", 4) == 0) { tag = Beta; vp = s + 4; if (parseU12NonZero(vp, &val) != 0) return 1; + pr->beta = (uint16_t)val; } else if (strncasecmp(s, "rc", 2) == 0) { tag = ReleaseCandidate; vp = s + 2; if (parseU12NonZero(vp, &val) != 0) return 1; + pr->rc = (uint16_t)val; } else if (strncasecmp(s, "git_", 4) == 0) { tag = GitRev; vp = s + 4; @@ -177,20 +180,6 @@ int parsePreRelease(PreRelease *pr, char *s) { return 1; } pr->tag = tag; - switch (tag) { - case Alpha: - pr->alpha = (uint16_t)val; - break; - case Beta: - pr->beta = (uint16_t)val; - break; - case ReleaseCandidate: - pr->rc = (uint16_t)val; - break; - case GitRev: - break; - default: return -1; - } return 0; }