#pragma once enum { Runeself = 0x80, Runesync = Runeself, Runeerror = 0xfffd, Runemax = 0x10ffff, Runemask = 0x1fffff, UTFmax = 4,}; int chartorune(Rune *rune, const char *str);int runetochar(char *str, const Rune *rune);int runenlen(const Rune *r, int nrune);int fullrune(const char *str, int n);int runelen(Rune c);Rune tolowerrune(Rune c);Rune toupperrune(Rune c);Rune totitlerune(Rune c);int islowerrune(Rune c);int isupperrune(Rune c);int isalpharune(Rune c);int istitlerune(Rune c);int isspacerune(Rune c);int isdigitrune(Rune c); const char *utfrune(const char *s, Rune c);int utflen(const char *s);int utfnlen(const char *s, long m);
#pragma once
enum {
Runeself = 0x80,
Runesync = Runeself,
Runeerror = 0xfffd,
Runemax = 0x10ffff,
Runemask = 0x1fffff,
UTFmax = 4,
};
int chartorune(Rune *rune, const char *str);
int runetochar(char *str, const Rune *rune);
int runenlen(const Rune *r, int nrune);
int fullrune(const char *str, int n);
int runelen(Rune c);
Rune tolowerrune(Rune c);
Rune toupperrune(Rune c);
Rune totitlerune(Rune c);
int islowerrune(Rune c);
int isupperrune(Rune c);
int isalpharune(Rune c);
int istitlerune(Rune c);
int isspacerune(Rune c);
int isdigitrune(Rune c);
const char *utfrune(const char *s, Rune c);
int utflen(const char *s);
int utfnlen(const char *s, long m);