Chrome Release Bot (LUCI) 4762b62e7d Publish DEPS for 106.0.5249.13 | 1 год назад | |
---|---|---|
.. | ||
bin | 1 год назад | |
include | 1 год назад | |
runestr | 1 год назад | |
runetype | 1 год назад | |
share | 1 год назад | |
test | 1 год назад | |
utf | 1 год назад | |
.gitattributes | 1 год назад | |
.travis.yml | 1 год назад | |
LICENSE | 1 год назад | |
Makefile | 1 год назад | |
README.md | 1 год назад |
This is a C89 UTF-8 library, with an API compatible with that of Plan 9’s libutf, but with a number of improvements:
utflen
and utfnlen
cannot overflow on 32- or 64-bit machines.chartorune
treats all invalid codepoints as though Runeerror
.fullrune
, utfecpy
, and utfnlen
do not overestimate the length of
malformed runes.charntorune(p,s,n)
, equivalent to
fullrune(s,n) ? chartorune(p,s) : 0
.Runeerror
may be set to an alternative replacement value, such as -1, to be
used instead of U+FFFD.Differences to be aware of:
UTFmax
is 6, though runetochar
will never write more than 4 bytes. Plan
9’s UTFmax
is 3.chartorune
may consume multiple bytes for each illegal rune. Plan 9 always
consumes 1.runelen
and runetochar
return 0 if the rune is too large to print. Plan 9
erroneously returns UTFmax
.