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();
        }
Пример #2
0
        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();
        }