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
}
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.
Size returns the amount of bytes needed to encode an UTF - 8 byte slice to CESU - 8 .