| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- package uaparser
- type Os struct {
- Family string
- Major string
- Minor string
- Patch string
- PatchMinor string `yaml:"patch_minor"`
- }
- func (parser *osParser) Match(line string, os *Os) {
- matches := parser.Reg.FindStringSubmatchIndex(line)
- if len(matches) > 0 {
- os.Family = string(parser.Reg.ExpandString(nil, parser.OSReplacement, line, matches))
- os.Major = string(parser.Reg.ExpandString(nil, parser.V1Replacement, line, matches))
- os.Minor = string(parser.Reg.ExpandString(nil, parser.V2Replacement, line, matches))
- os.Patch = string(parser.Reg.ExpandString(nil, parser.V3Replacement, line, matches))
- os.PatchMinor = string(parser.Reg.ExpandString(nil, parser.V4Replacement, line, matches))
- }
- }
- func (os *Os) ToString() string {
- var str string
- if os.Family != "" {
- str += os.Family
- }
- version := os.ToVersionString()
- if version != "" {
- str += " " + version
- }
- return str
- }
- func (os *Os) ToVersionString() string {
- var version string
- if os.Major != "" {
- version += os.Major
- }
- if os.Minor != "" {
- version += "." + os.Minor
- }
- if os.Patch != "" {
- version += "." + os.Patch
- }
- if os.PatchMinor != "" {
- version += "." + os.PatchMinor
- }
- return version
- }
|