add version
This commit is contained in:
@@ -0,0 +1 @@
|
||||
0.1.0.0
|
||||
@@ -0,0 +1,3 @@
|
||||
package version
|
||||
|
||||
var VersionString string = "1.2.3.4.v1"
|
||||
Binary file not shown.
@@ -0,0 +1,48 @@
|
||||
package version
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
||||
type Version struct {
|
||||
Major int
|
||||
Minor int
|
||||
Patch int
|
||||
Build int
|
||||
VersionNumberToIncrement string // New field
|
||||
}
|
||||
|
||||
func (v Version) String() string {
|
||||
return fmt.Sprintf("%d.%d.%d.%d", v.Major, v.Minor, v.Patch, v.Build)
|
||||
}
|
||||
|
||||
func NewVersionFromString(versionString string) (*Version, error) {
|
||||
parts := strings.Split(versionString, ".")
|
||||
if len(parts) != 5 { // Update length check for new field
|
||||
return nil, fmt.Errorf("invalid version string: %s", versionString)
|
||||
}
|
||||
|
||||
major, err := strconv.Atoi(parts[0])
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("invalid major version: %s", parts[0])
|
||||
}
|
||||
|
||||
minor, err := strconv.Atoi(parts[1])
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("invalid minor version: %s", parts[1])
|
||||
}
|
||||
|
||||
patch, err := strconv.Atoi(parts[2])
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("invalid patch version: %s", parts[2])
|
||||
}
|
||||
|
||||
build, err := strconv.Atoi(parts[3])
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("invalid build version: %s", parts[3])
|
||||
}
|
||||
|
||||
return &Version{major, minor, patch, build, parts[4]}, nil // Initialize new field
|
||||
}
|
||||
Reference in New Issue
Block a user