#pragma once #include #include #include enum { // Fields inside UnicodeData.txt Fcode, Fname, Fcategory, Fcombine, Fbidir, Fdecomp, Fdecimal, Fdigit, Fnumeric, Fmirror, Foldname, Fcomment, Fupper, Flower, Ftitle, NumFields, NumRunes = 1 << 21, }; /* input functions */ enum { ParseEOF, ParseOK, ParseSkip, }; int parse(io·Stream *io, int nfield, char **field, int len, char *line); int codepoint(char *s); void codepointrange(io·Stream *utf8, char *field[NumFields], int *start, int *stop); /* output functions */ void putsearch(void); int putrange(char *ident, char *prop, int force); int putpair(char *ident, char *prop); int putsingle(char *ident, char *prop);