Пример #1
0
        public void Deserialize(ref TinyhandReader reader, TinyhandSerializerOptions options)
        {
            var numberOfData = reader.ReadArrayHeader();

            options.Security.DepthStep(ref reader);
            try
            {
                if (numberOfData-- > 0 && !reader.TryReadNil())
                {
                    this.X = options.Resolver.GetFormatter <int>().Deserialize(ref reader, options);
                }
                if (numberOfData-- > 0 && !reader.TryReadNil())
                {
                    this.Y = options.Resolver.GetFormatter <int>().Deserialize(ref reader, options);
                }
                if (numberOfData-- > 0 && !reader.TryReadNil())
                {
                    this.A = options.Resolver.GetFormatter <int[]>().Deserialize(ref reader, options) !;
                }
                else
                {
                    this.A = new int[0];
                }
                while (numberOfData-- > 0)
                {
                    reader.Skip();
                }
            }
            finally { reader.Depth--; }
        }