func (s spanID) String() string {
	return hex.EncodeToString(s[:])
}
String returns the hex string representation form of a SsanID
package propagation
import (
	"bytes"
	"encoding/hex"
	"encoding/json"
)
const (
	FlagsSampled = TraceFlags(0x01)
	errInvalidHexID errorConst = "trace-id and span-id can only contain [0-9a-f] characters, all lowercase"
	errInvalidTraceIDLength errorConst = "hex encoded trace-id must have length equals to 32"
	errNilTraceID           errorConst = "trace-id can't be all zero"
	errInvalidSpanIDLength errorConst = "hex encoded span-id must have length equals to 16"
	errNilSpanID           errorConst = "span-id can't be all zero"
)
type errorConst string
func (e errorConst) Error() string {
	return string(e)
}
type traceID [16]byte
var nilTraceID traceID
var _ json.Marshaler = nilTraceID
func (t traceID) IsValid() bool {
	return !bytes.Equal(t[:], nilTraceID[:])
}
func (t traceID) MarshalJSON() ([]byte, error) {
	return json.Marshal(t.String())
}
func (t traceID) String() string {
	return hex.EncodeToString(t[:])
}
type spanID [8]byte
var nilSpanID spanID
var _ json.Marshaler = nilSpanID
func (s spanID) IsValid() bool {
	return !bytes.Equal(s[:], nilSpanID[:])
}
func (s spanID) MarshalJSON() ([]byte, error) {
	return json.Marshal(s.String())
}