public override void Serialize(string name, Type type, ref object value)
 {
     ReadObject(name, Archive.GetSerializeData(type, allowEmptySerializer: true), ref value);
 }
        public void ReadObjectWithoutObjectInfo(SerializeData staticSerializeData, ref object value)
        {
            Type          type          = (value != null) ? value.GetType() : null;
            SerializeData serializeData = (!(type == null) && !(staticSerializeData.Type == type)) ? Archive.GetSerializeData(type, allowEmptySerializer: false) : staticSerializeData;

            if (serializeData.AutoConstructObject && value == null)
            {
                value = Activator.CreateInstance(serializeData.Type, nonPublic: true);
            }
            serializeData.Read(this, ref value);
        }