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; } } }
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); } }