epoc32/include/e32hashtab.h
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
equal deleted inserted replaced
3:e1b950c65cb4 4:837f303aceeb
     1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     4 // under the terms of the License "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     7 //
     8 // Initial Contributors:
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
     9 // Nokia Corporation - initial contribution.
    10 //
    10 //
    11 // Contributors:
    11 // Contributors:
   499 template <class T>
   499 template <class T>
   500 class RHashSet : public RHashTableBase
   500 class RHashSet : public RHashTableBase
   501 	{
   501 	{
   502 private:
   502 private:
   503 	friend class THashSetIter<T>;
   503 	friend class THashSetIter<T>;
   504 	/** @internalComponent */
   504 	
   505 	struct SFullElement
   505 	struct SFullElement
   506 		{
   506 		{
   507 		TUint32 iHash;
   507 		TUint32 iHash;
   508 		T iT;
   508 		T iT;
   509 		};
   509 		};
   704 */
   704 */
   705 template <class T>
   705 template <class T>
   706 class THashSetIter : public THashTableIterBase
   706 class THashSetIter : public THashTableIterBase
   707 	{
   707 	{
   708 private:
   708 private:
   709 	/** @internalComponent */
   709 	
   710 	struct SFullElement
   710 	struct SFullElement
   711 		{
   711 		{
   712 		TUint32 iHash;
   712 		TUint32 iHash;
   713 		T iT;
   713 		T iT;
   714 		};
   714 		};
   787 template <class T>
   787 template <class T>
   788 class RPtrHashSet : public RHashTableBase
   788 class RPtrHashSet : public RHashTableBase
   789 	{
   789 	{
   790 private:
   790 private:
   791 	friend class TPtrHashSetIter<T>;
   791 	friend class TPtrHashSetIter<T>;
   792 	/** @internalComponent */
   792 	
   793 	struct SFullElement
   793 	struct SFullElement
   794 		{
   794 		{
   795 		TUint32 iHash;
   795 		TUint32 iHash;
   796 		T* iT;
   796 		T* iT;
   797 		};
   797 		};
   993 */
   993 */
   994 template <class T>
   994 template <class T>
   995 class TPtrHashSetIter : public THashTableIterBase
   995 class TPtrHashSetIter : public THashTableIterBase
   996 	{
   996 	{
   997 private:
   997 private:
   998 	/** @internalComponent */
   998 	
   999 	struct SFullElement		
   999 	struct SFullElement		
  1000 		{
  1000 		{
  1001 		TUint32 iHash;
  1001 		TUint32 iHash;
  1002 		T* iT;
  1002 		T* iT;
  1003 		};
  1003 		};
  1077 template <class K, class V>
  1077 template <class K, class V>
  1078 class RHashMap : public RHashTableBase
  1078 class RHashMap : public RHashTableBase
  1079 	{
  1079 	{
  1080 private:
  1080 private:
  1081 	friend class THashMapIter<K,V>;
  1081 	friend class THashMapIter<K,V>;
  1082 	/** @internalComponent */
  1082 	
  1083 	struct SFullElement
  1083 	struct SFullElement
  1084 		{
  1084 		{
  1085 		TUint32 iHash;
  1085 		TUint32 iHash;
  1086 		K iK;
  1086 		K iK;
  1087 		V iV;
  1087 		V iV;
  1289 */
  1289 */
  1290 template <class K, class V>
  1290 template <class K, class V>
  1291 class THashMapIter : public THashTableIterBase
  1291 class THashMapIter : public THashTableIterBase
  1292 	{
  1292 	{
  1293 private:
  1293 private:
  1294 	/** @internalComponent */
  1294 	
  1295 	struct SFullElement
  1295 	struct SFullElement
  1296 		{
  1296 		{
  1297 		TUint32 iHash;
  1297 		TUint32 iHash;
  1298 		K iK;
  1298 		K iK;
  1299 		V iV;
  1299 		V iV;
  1397 template <class K, class V>
  1397 template <class K, class V>
  1398 class RPtrHashMap : public RHashTableBase
  1398 class RPtrHashMap : public RHashTableBase
  1399 	{
  1399 	{
  1400 private:
  1400 private:
  1401 	friend class TPtrHashMapIter<K,V>;
  1401 	friend class TPtrHashMapIter<K,V>;
  1402 	/** @internalComponent */
  1402 	
  1403 	struct SFullElement
  1403 	struct SFullElement
  1404 		{
  1404 		{
  1405 		TUint32 iHash;
  1405 		TUint32 iHash;
  1406 		K* iK;
  1406 		K* iK;
  1407 		V* iV;
  1407 		V* iV;
  1612 */
  1612 */
  1613 template <class K, class V>
  1613 template <class K, class V>
  1614 class TPtrHashMapIter : public THashTableIterBase
  1614 class TPtrHashMapIter : public THashTableIterBase
  1615 	{
  1615 	{
  1616 private:
  1616 private:
  1617 	/** @internalComponent */
  1617 	
  1618 	struct SFullElement
  1618 	struct SFullElement
  1619 		{
  1619 		{
  1620 		TUint32 iHash;
  1620 		TUint32 iHash;
  1621 		K* iK;
  1621 		K* iK;
  1622 		V* iV;
  1622 		V* iV;