implement a string representation of the version number

This will be useful as soon as we start supporting non-gQUIC versions.
This commit is contained in:
Marten Seemann
2017-09-27 11:39:12 +07:00
parent 79c176692e
commit 6dde979f8f
12 changed files with 39 additions and 12 deletions

View File

@@ -1,5 +1,7 @@
package protocol
import "fmt"
// VersionNumber is a version number as int
type VersionNumber int
@@ -27,6 +29,21 @@ func (vn VersionNumber) UsesTLS() bool {
return vn == VersionTLS
}
func (vn VersionNumber) String() string {
switch vn {
case VersionWhatever:
return "whatever"
case VersionUnsupported:
return "unsupported"
case VersionUnknown:
return "unknown"
case VersionTLS:
return "TLS dev version (WIP)"
default:
return fmt.Sprintf("%d", vn)
}
}
// VersionNumberToTag maps version numbers ('32') to tags ('Q032')
func VersionNumberToTag(vn VersionNumber) uint32 {
v := uint32(vn)