//----------------------------------------------------------------------------------------------
int ObjectSerializer::DeserializeContainerSet(char* p_fieldAddress, TypeNode* p_type, fstream& p_eye)
{
    // Pointer to set is not supported
    _ASSERTE(p_type->Indirection == false);

    Container* container = reinterpret_cast<Container*>(p_fieldAddress);
    int count;

    p_eye.read(reinterpret_cast<char*>(&count), sizeof(int));
    container->Clear();
    char* tempStorage0 = container->GetTemp();

    for(int i = 0; i < count; ++i)
    {
        DeserializeType(tempStorage0, p_type->TemplateArguments[0], p_eye);
        container->AddTemp();
    }

    return container->TypeSize();
}