62static inline int digits_u32(
uint32_t v) {
100static inline int digits_u16(
uint16_t v) {
128static inline int digits_u8(
uint8_t v) {
164static inline size_t write_decimal(
int value,
char *dst) {
181 temp[pos++] =
'0' + (v % 10);
186 for (
int i = 0; i < pos; i++) {
187 dst[i] = temp[pos - 1 - i];
221static inline char *write_u8(
char *p,
uint8_t n) {
224 }
else if (n < 100) {
225 *p++ =
'0' + (n / 10);
226 *p++ =
'0' + (n % 10);
228 *p++ =
'0' + (n / 100);
229 *p++ =
'0' + ((n / 10) % 10);
230 *p++ =
'0' + (n % 10);
253static inline char *write_u16(
char *p,
uint16_t n) {
264 temp[pos++] =
'0' + (v % 10);
269 for (
int i = pos - 1; i >= 0; i--) {
294static inline char *write_u32(
char *p,
uint32_t n) {
305 temp[pos++] =
'0' + (v % 10);
310 for (
int i = pos - 1; i >= 0; i--) {