var KeyCreateSession … var KeyUpdateSession … var KeyShutdownSession … type SessionKey … // NewSessionKey creates a new Key for *Session values. func NewSessionKey(name, description string) *SessionKey { … } func (k *SessionKey) Name() string { … } func (k *SessionKey) Description() string { … } func (k *SessionKey) Format(w io.Writer, buf []byte, l label.Label) { … } // Of creates a new Label with this key and the supplied session. func (k *SessionKey) Of(v *Session) label.Label { … } // Get can be used to get the session for the key from a label.Map. func (k *SessionKey) Get(lm label.Map) *Session { … } // From can be used to get the session value from a Label. func (k *SessionKey) From(t label.Label) *Session { … }