protected static Support.BitSet ReadSaveFields(TypeDescGenerator.TypeDesc tDesc, IReader pkg) { var bitSet = new Support.BitSet(); var byteArray = TypeDescGenerator.Instance.GetSerializer(typeof(byte[])); byte[] bits = byteArray.ReadValue(pkg) as byte[]; bitSet.Init((UInt32)tDesc.Members.Count, bits); return(bitSet); }
protected static Support.BitSet WriteSaveFields(ISerializer obj, TypeDescGenerator.TypeDesc tDesc, IWriter pkg) { var bitSet = new Support.BitSet(); bitSet.Init((UInt16)tDesc.Members.Count); for (int i = 0; i < tDesc.Members.Count; i++) { bool cmp = tDesc.IsDefaultValue(obj, tDesc.Members[i].PropInfo); if (cmp == false) { bitSet.SetBit((UInt32)i, true); } } var byteArray = TypeDescGenerator.Instance.GetSerializer(typeof(byte[])); byteArray.WriteValue(bitSet.Data, pkg); return(bitSet); }