public void ReadFromStream(BinaryInputStream s, bool is_short_version = false) { List<Action<BinaryInputStream>> readers = new List<Action<BinaryInputStream>>(); if (!is_short_version) { s.ReadBool(true); } int size = s.ReadInt32(); for (int i = 0; i < size; ++i) { string n = s.ReadString(); int t = s.ReadInt32(); readers.Add(SetField(n, t)); } foreach (var ac in readers) { ac(s); } }
public void Read(BinaryInputStream s) { properties.ReadFromStream(s); code = s.ReadString(); }