void jis_in(int fd, long *notused, struct convert *out); void jisjis_in(int fd, long *notused, struct convert *out); void msjis_in(int fd, long *notused, struct convert *out); void ujis_in(int fd, long *notused, struct convert *out); void jisjis_out(Rune *base, int n, long *notused); void ujis_out(Rune *base, int n, long *notused); void msjis_out(Rune *base, int n, long *notused); void big5_in(int fd, long *notused, struct convert *out); void big5_out(Rune *base, int n, long *notused); void gb_in(int fd, long *notused, struct convert *out); void gb_out(Rune *base, int n, long *notused); void gbk_in(int fd, long *notused, struct convert *out); void gbk_out(Rune *base, int n, long *notused); void uksc_in(int fd, long *notused, struct convert *out); void uksc_out(Rune *base, int n, long *notused); void html_in(int fd, long *notused, struct convert *out); void html_out(Rune *base, int n, long *notused); void tune_in(int fd, long *notused, struct convert *out); void tune_out(Rune *base, int n, long *notused); #define emit(x) *(*r)++ = (x) #define NRUNE (Runemax+1) extern long tab[]; /* common table indexed by Runes for reverse mappings */