*** The function char-boundary-p returns non-nil if position POS is
between two characters in the buffer (not in the middle of a character).

When the value is non-nil, it says what kind of character follows POS:

0 if POS is at an ASCII character or at the end of range, 1 if POS is before a 2-byte length multi-byte form, 2 if POS is at a head of 3-byte length multi-byte form, 3 if POS is at a head of 4-byte length multi-byte form, 4 if POS is at a head of multi-byte form of a composite character.