char CharMapper::trigraph() { if (settings.trigraph) { char c = charmap(); if (c == '?') { c = charmap(); if (c == '?') { c = charmap(); switch (c) { case '=': return '#'; case '/': return '\\'; case '(': return '['; case ')': return ']'; case '\'': return '^'; case '!': return '|'; case '<': return '{'; case '>': return '}'; case '-': return '~'; } unget(c); unget('?'); } else { unget(c); } return '?'; } else { return c; } } else { return in.get(); } }
char *trans_phone(char *phone) { char *p = phone; while (*p) { *p = charmap(*p); p++; } return phone; }
static DF1(jtcharmapb){V*v=VAV(self); R charmap(w,VAV(v->f)->f,VAV(v->h)->f);}