williamr@4: // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@4: // All rights reserved. williamr@4: // This component and the accompanying materials are made available williamr@4: // under the terms of "Eclipse Public License v1.0" williamr@4: // which accompanies this distribution, and is available williamr@4: // at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@4: // williamr@4: // Initial Contributors: williamr@4: // Nokia Corporation - initial contribution. williamr@4: // williamr@4: // Contributors: williamr@4: // williamr@4: // Description: williamr@4: // williamr@4: williamr@4: williamr@4: #ifndef ISSAME_H williamr@4: #define ISSAME_H williamr@4: williamr@4: williamr@4: // Provisional implementation of a construct that allows to determine williamr@4: // at compile time whether a type is the same as another type williamr@4: williamr@4: // To be redefined using std::tr1:is_same when a TR1 implementation williamr@4: // becomes available for use with Symbian OS. williamr@4: williamr@4: williamr@4: // Implementation construct - do not use williamr@4: template williamr@4: struct TIsSame williamr@4: { williamr@4: enum williamr@4: { williamr@4: EValue = 0 williamr@4: }; williamr@4: }; williamr@4: williamr@4: // Implementation construct - do not use williamr@4: template williamr@4: struct TIsSame williamr@4: { williamr@4: enum williamr@4: { williamr@4: EValue = 1 williamr@4: }; williamr@4: }; williamr@4: williamr@4: williamr@4: #define IS_SAME(Type1, Type2) TIsSame::EValue williamr@4: williamr@4: williamr@4: #endif //! ISSAME_H williamr@4: