public long ReadDecimalLong() { Require(1); for (int pos = 0; Request(pos + 1); pos++) { byte b = _easyBuffer.GetByte(pos); if ((b < '0' || b > '9') && (pos != 0 || b != '-')) { // Non-digit, or non-leading negative sign. if (pos == 0) { throw new FormatException(string.Format( "Expected leading [0-9] or '-' character but was %#x", b)); } break; } } return(_easyBuffer.ReadDecimalLong()); }