public static bool ReadBool(BinaryReader br) { var n = br.ReadUInt32(); return(n switch { TrueNum => true, FalseNum => false, _ => throw TgRpcDeserializeException.UnexpectedBoolTypeNumber(n), });
public static bool ReadBool(BinaryReader br) { var n = br.ReadUInt32(); switch (n) { case TrueNum: return(true); case FalseNum: return(false); default: throw TgRpcDeserializeException.UnexpectedBoolTypeNumber(n); } }
public static Func <BinaryReader, Arr <T> > ReadVector <T>( Func <BinaryReader, T> deserializer ) => br => { var typeNumber = ReadUint(br); if (typeNumber != VectorNum) { throw TgRpcDeserializeException.UnexpectedVectorTypeNumber(typeNumber); } var count = ReadInt(br); var arr = new T[count]; for (var i = 0; i < count; i++) { arr[i] = deserializer(br); } return(arr.ToArr()); };