func NewUInt16(name, description string) *UInt16 {
	return &UInt16{name: name, description: description}
}
NewUInt16 creates a new Key for uint16 values.
package keys
import (
	"fmt"
	"io"
	"math"
	"strconv"
	"golang.org/x/tools/internal/event/label"
)
type Value struct {
	name        string
	description string
}
func New(name, description string) *Value {
	return &Value{name: name, description: description}
}
func (k *Value) Name() string        { return k.name }
func (k *Value) Description() string { return k.description }
func (k *Value) Format(w io.Writer, buf []byte, l label.Label) {
	fmt.Fprint(w, k.From(l))
}
func (k *Value) Get(lm label.Map) interface{} {
	if t := lm.Find(k); t.Valid() {
		return k.From(t)
	}
	return nil
}
func (k *Value) From(t label.Label) interface{} { return t.UnpackValue() }
func (k *Value) Of(value interface{}) label.Label { return label.OfValue(k, value) }
type Tag struct {
	name        string
	description string
}
func NewTag(name, description string) *Tag {
	return &Tag{name: name, description: description}
}
func (k *Tag) Name() string        { return k.name }
func (k *Tag) Description() string { return k.description }
func (k *Tag) Format(w io.Writer, buf []byte, l label.Label) {}
func (k *Tag) New() label.Label { return label.OfValue(k, nil) }
type Int struct {
	name        string
	description string
}
func NewInt(name, description string) *Int {
	return &Int{name: name, description: description}
}
func (k *Int) Name() string        { return k.name }
func (k *Int) Description() string { return k.description }
func (k *Int) Format(w io.Writer, buf []byte, l label.Label) {
	w.Write(strconv.AppendInt(buf, int64(k.From(l)), 10))
}
func (k *Int) Of(v int) label.Label { return label.Of64(k, uint64(v)) }
func (k *Int) Get(lm label.Map) int {
	if t := lm.Find(k); t.Valid() {
		return k.From(t)
	}
	return 0
}
func (k *Int) From(t label.Label) int { return int(t.Unpack64()) }
type Int8 struct {
	name        string
	description string
}
func NewInt8(name, description string) *Int8 {
	return &Int8{name: name, description: description}
}
func (k *Int8) Name() string        { return k.name }
func (k *Int8) Description() string { return k.description }
func (k *Int8) Format(w io.Writer, buf []byte, l label.Label) {
	w.Write(strconv.AppendInt(buf, int64(k.From(l)), 10))
}
func (k *Int8) Of(v int8) label.Label { return label.Of64(k, uint64(v)) }
func (k *Int8) Get(lm label.Map) int8 {
	if t := lm.Find(k); t.Valid() {
		return k.From(t)
	}
	return 0
}
func (k *Int8) From(t label.Label) int8 { return int8(t.Unpack64()) }
type Int16 struct {
	name        string
	description string
}
func NewInt16(name, description string) *Int16 {
	return &Int16{name: name, description: description}
}
func (k *Int16) Name() string        { return k.name }
func (k *Int16) Description() string { return k.description }
func (k *Int16) Format(w io.Writer, buf []byte, l label.Label) {
	w.Write(strconv.AppendInt(buf, int64(k.From(l)), 10))
}
func (k *Int16) Of(v int16) label.Label { return label.Of64(k, uint64(v)) }
func (k *Int16) Get(lm label.Map) int16 {
	if t := lm.Find(k); t.Valid() {
		return k.From(t)
	}
	return 0
}
func (k *Int16) From(t label.Label) int16 { return int16(t.Unpack64()) }
type Int32 struct {
	name        string
	description string
}
func NewInt32(name, description string) *Int32 {
	return &Int32{name: name, description: description}
}
func (k *Int32) Name() string        { return k.name }
func (k *Int32) Description() string { return k.description }
func (k *Int32) Format(w io.Writer, buf []byte, l label.Label) {
	w.Write(strconv.AppendInt(buf, int64(k.From(l)), 10))
}
func (k *Int32) Of(v int32) label.Label { return label.Of64(k, uint64(v)) }
func (k *Int32) Get(lm label.Map) int32 {
	if t := lm.Find(k); t.Valid() {
		return k.From(t)
	}
	return 0
}
func (k *Int32) From(t label.Label) int32 { return int32(t.Unpack64()) }
type Int64 struct {
	name        string
	description string
}
func NewInt64(name, description string) *Int64 {
	return &Int64{name: name, description: description}
}
func (k *Int64) Name() string        { return k.name }
func (k *Int64) Description() string { return k.description }
func (k *Int64) Format(w io.Writer, buf []byte, l label.Label) {
	w.Write(strconv.AppendInt(buf, k.From(l), 10))
}
func (k *Int64) Of(v int64) label.Label { return label.Of64(k, uint64(v)) }
func (k *Int64) Get(lm label.Map) int64 {
	if t := lm.Find(k); t.Valid() {
		return k.From(t)
	}
	return 0
}
func (k *Int64) From(t label.Label) int64 { return int64(t.Unpack64()) }
type UInt struct {
	name        string
	description string
}
func NewUInt(name, description string) *UInt {
	return &UInt{name: name, description: description}
}
func (k *UInt) Name() string        { return k.name }
func (k *UInt) Description() string { return k.description }
func (k *UInt) Format(w io.Writer, buf []byte, l label.Label) {
	w.Write(strconv.AppendUint(buf, uint64(k.From(l)), 10))
}
func (k *UInt) Of(v uint) label.Label { return label.Of64(k, uint64(v)) }
func (k *UInt) Get(lm label.Map) uint {
	if t := lm.Find(k); t.Valid() {
		return k.From(t)
	}
	return 0
}
func (k *UInt) From(t label.Label) uint { return uint(t.Unpack64()) }
type UInt8 struct {
	name        string
	description string
}
func NewUInt8(name, description string) *UInt8 {
	return &UInt8{name: name, description: description}
}
func (k *UInt8) Name() string        { return k.name }
func (k *UInt8) Description() string { return k.description }
func (k *UInt8) Format(w io.Writer, buf []byte, l label.Label) {
	w.Write(strconv.AppendUint(buf, uint64(k.From(l)), 10))
}
func (k *UInt8) Of(v uint8) label.Label { return label.Of64(k, uint64(v)) }
func (k *UInt8) Get(lm label.Map) uint8 {
	if t := lm.Find(k); t.Valid() {
		return k.From(t)
	}
	return 0
}
func (k *UInt8) From(t label.Label) uint8 { return uint8(t.Unpack64()) }
type UInt16 struct {
	name        string
	description string
}