# File lib/semantic_puppet/version.rb, line 17 def parse(ver) match, major, minor, patch, prerelease, build = *ver.match(/\A#{REGEX_FULL}\Z/) if match.nil? raise "Unable to parse '#{ver}' as a semantic version identifier" end prerelease = parse_prerelease(prerelease) if prerelease # Build metadata is not yet supported in semantic_puppet, but we hope to. # The following code prevents build metadata for now. #build = parse_build_metadata(build) if build if !build.nil? raise "'#{ver}' MUST NOT include build identifiers" end self.new(major.to_i, minor.to_i, patch.to_i, prerelease, build) end