Пример #1
0
        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);
        }
Пример #2
0
        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);
        }