public int ToInt() { ValueHandleType type = _type; if (type == ValueHandleType.Zero) { return(0); } if (type == ValueHandleType.One) { return(1); } if (type == ValueHandleType.Int8) { return(GetInt8()); } if (type == ValueHandleType.Int16) { return(GetInt16()); } if (type == ValueHandleType.Int32) { return(GetInt32()); } if (type == ValueHandleType.Int64) { long value = GetInt64(); if (value >= int.MinValue && value <= int.MaxValue) { return((int)value); } } if (type == ValueHandleType.UInt64) { ulong value = GetUInt64(); if (value <= int.MaxValue) { return((int)value); } } if (type == ValueHandleType.UTF8) { return(XmlConverter.ToInt32(_bufferReader.Buffer, _offset, _length)); } return(XmlConverter.ToInt32(GetString())); }
public int ToInt() { switch (this.type) { case ValueHandleType.Zero: return(0); case ValueHandleType.One: return(1); case ValueHandleType.Int8: return(this.GetInt8()); case ValueHandleType.Int16: return(this.GetInt16()); case ValueHandleType.Int32: return(this.GetInt32()); case ValueHandleType.Int64: { long num = this.GetInt64(); if ((num >= -2147483648L) && (num <= 0x7fffffffL)) { return((int)num); } break; } case ValueHandleType.UInt64: { ulong num2 = this.GetUInt64(); if (num2 <= 0x7fffffffL) { return((int)num2); } break; } case ValueHandleType.UTF8: return(XmlConverter.ToInt32(this.bufferReader.Buffer, this.offset, this.length)); } return(XmlConverter.ToInt32(this.GetString())); }