internal char ScanHex(int c) { int i; int d; i = 0; if (CharsRight() >= c) { for (; c > 0 && ((d = HexDigit(MoveRightGetChar())) >= 0); c -= 1) { i *= 0x10; i += d; } } if (c > 0) throw MakeException(SR.TooFewHex); return (char)i; }