internal/unicode/cesu8/cesu8.go
func Size(p []byte) int {
	n := 0
	for i := 0; i < len(p); {
		r, size, _ := decodeRune(p[i:])
		i += size
		n += RuneLen(r)
	}
	return n
}
func Size(p []byte) int {
	n := 0
	for i := 0; i < len(p); {
		r, size, _ := decodeRune(p[i:])
		i += size
		n += RuneLen(r)
	}
	return n
}
// Size returns the amount of bytes needed to encode an UTF-8 byte slice to CESU-8.