internal override void vmethod_0(Class741.Class742 serializer) { Class889 stream = serializer.Stream; this.list_0.Clear(); foreach (Class48 schema in serializer.DataStore.Schemas) { this.list_0.Add(schema.Name); } stream.vmethod_11((uint)this.list_1.Count); stream.vmethod_11(0U); foreach (Class49.Class53.Class62 class62 in this.list_1) { class62.Write(stream); } stream.vmethod_13(717068L); stream.vmethod_11((uint)this.list_2.Count); stream.vmethod_11(0U); foreach (Class49.Class53.Class63 class63 in this.list_2) { class63.Write(stream); } uint num = Class49.smethod_0((uint)((ulong)stream.Position - this.ulong_0), 16); for (int index = 0; (long)index < (long)num; ++index) { stream.vmethod_1((byte)115); } this.SystemDataOffset = (ulong)stream.Position; stream.vmethod_11((uint)this.list_0.Count); foreach (string str in this.list_0) { stream.vmethod_20(str); } }
internal override void vmethod_0(Class741.Class742 serializer) { Class889 stream = serializer.Stream; long position = stream.Position; uint num1 = serializer.SchemaIndex.PropertyEntries.Count == 0 ? 1U : serializer.SchemaIndex.PropertyEntries[serializer.SchemaIndex.PropertyEntries.Count - 1].Index + 1U; foreach (Class558 class558 in this.list_1) { uint num2 = (uint)(stream.Position - position); serializer.SchemaIndex.PropertyEntries.Add(new Class49.Class53.Class63() { Index = num1, SegmentIndex = this.class681_0.SegmentIndex, LocalOffset = num2 }); class558.Write(stream); ++num1; } List <string> stringList = new List <string>(); Dictionary <string, uint> dictionary = new Dictionary <string, uint>(); foreach (Class48 class48 in this.list_0) { foreach (Class986 property in class48.Properties) { uint count; if (!dictionary.TryGetValue(property.Name, out count)) { count = (uint)stringList.Count; stringList.Add(property.Name); dictionary.Add(property.Name, count); } property.NameIndex = count; } } if (serializer.SchemaIndex.SchemaEntries.Count != 0) { throw new Exception("SchemaIndex.SchemaEntries is expected to have 0 elements."); } uint num3 = 0; foreach (Class48 class48 in this.list_0) { uint num2 = (uint)(stream.Position - position); serializer.SchemaIndex.SchemaEntries.Add(new Class49.Class53.Class62() { Index = num3, SegmentIndex = this.class681_0.SegmentIndex, LocalOffset = num2 }); class48.Write(stream); ++num3; } uint num4 = Class49.smethod_0((uint)(stream.Position - position), 16); for (int index = 0; (long)index < (long)num4; ++index) { stream.vmethod_1((byte)115); } this.SystemDataOffset = (ulong)stream.Position; stream.vmethod_11((uint)stringList.Count); foreach (string str in stringList) { stream.vmethod_20(str); } }