public static void test(bool enableCache) { SerializationMethodsBase methods = new SMAB().GetSerializationMethods(typeof(MyObject), enableCache); MyObject writeObject = new MyObject(new Vector { x = 4, y = 3, z = 5 }, "Tom", "to play in computer games", "eat testy food", "code"); writeObject.KnownWords["russian"] = new Dictionary <string, string> { { "cat", "кот" }, { "language", "язык" }, { "mouse", "мышь" }, { "code", "код" }, }; SerializeStream sstream = new SerializeStream(); methods.Serialize(sstream, writeObject); Console.WriteLine(); SerializeStream dstream = new SerializeStream(sstream.GetBytes()); MyObject readObject = ((MyObject)methods.Deserialize(dstream)); readObject.sayHello(); }
public static void test() { Serializer.UseMethodsBuilder(new SMAB()); Friend friend = new Friend("Tom", new Friend("Bob", new Friend("Robin", new Friend("Marry")))); SerializeStream sstream = new SerializeStream(); Serializer.Serialize <Friend>(sstream, friend); Serializer.Deserialize <Friend>(new SerializeStream(sstream.GetBytes())).print(); Console.WriteLine(); Console.WriteLine($"{String.Concat(Enumerable.Repeat("-", 32).ToArray())}Cicles test{String.Concat(Enumerable.Repeat("-", 32).ToArray())}"); Friend friend1 = new Friend("VIctor", null); Friend friend2 = new Friend("Dan", friend1); friend1.friend = friend2; Friend cicleFriend = new Friend("Aurora", friend1); sstream = new SerializeStream(); Serializer.Serialize <Friend>(sstream, cicleFriend); Serializer.Deserialize <Friend>(new SerializeStream(sstream.GetBytes())).print(); }