Exemplo n.º 1
0
        private void Deserialize(BinaryReader br)
        {
            _hash = br.ReadInt32();

            Int32 propertiesLength = br.ReadInt32();

            if (propertiesLength > -1)
            {
                _properties = new Int32[propertiesLength];
                for (Int32 i = 0; i < propertiesLength; i++)
                {
                    _properties[i] = br.ReadInt32();
                }
            }

            Int32 fieldsLength = br.ReadInt32();

            if (fieldsLength > -1)
            {
                _fields = new Int32[fieldsLength];
                for (Int32 i = 0; i < fieldsLength; i++)
                {
                    _fields[i] = br.ReadInt32();
                }
            }

            Int32 methodsLength = br.ReadInt32();

            if (methodsLength > -1)
            {
                _methods = new Int32[methodsLength];
                for (Int32 i = 0; i < methodsLength; i++)
                {
                    _methods[i] = br.ReadInt32();
                }
            }

            Int32 nestedLength = br.ReadInt32();

            if (nestedLength > -1)
            {
                _nestedTypes = new TypeHash[nestedLength];
                for (Int32 i = 0; i < nestedLength; i++)
                {
                    TypeHash nested = new TypeHash();
                    nested.Deserialize(br);
                    _nestedTypes[i] = nested;
                }
            }
        }
Exemplo n.º 2
0
        public static TypeHash FromBase256(String base64String)
        {
            if (base64String == null)
            {
                return(null);
            }

            using (MemoryStream ms = new MemoryStream(Base256.Decode(base64String)))
                using (BinaryReader br = new BinaryReader(ms))
                {
                    TypeHash hash = new TypeHash();
                    hash.Deserialize(br);
                    return(hash);
                }
        }