SNAP Library 6.0, User Reference  2020-12-09 16:24:20
SNAP, a general purpose, high performance system for analysis and manipulation of large networks
THashKeyDatI< TKey, TDat > Class Template Reference

#include <hash.h>

Public Types

typedef THashKeyDat< TKey, TDat > THKeyDat
 

Public Member Functions

 THashKeyDatI ()
 
 THashKeyDatI (const THashKeyDatI &_HashKeyDatI)
 
 THashKeyDatI (const THKeyDat *_KeyDatI, const THKeyDat *_EndI)
 
THashKeyDatIoperator= (const THashKeyDatI &HashKeyDatI)
 
bool operator== (const THashKeyDatI &HashKeyDatI) const
 
bool operator< (const THashKeyDatI &HashKeyDatI) const
 
THashKeyDatIoperator++ (int)
 
THashKeyDatIoperator-- (int)
 
THKeyDatoperator* () const
 
THKeyDatoperator() () const
 
THKeyDatoperator-> () const
 
THashKeyDatINext ()
 
bool IsEmpty () const
 Tests whether the iterator has been initialized. More...
 
bool IsEnd () const
 Tests whether the iterator is pointing to the past-end element. More...
 
const TKey & GetKey () const
 
const TDat & GetDat () const
 
TDat & GetDat ()
 

Private Attributes

THKeyDatKeyDatI
 
THKeyDatEndI
 

Detailed Description

template<class TKey, class TDat>
class THashKeyDatI< TKey, TDat >

Definition at line 49 of file hash.h.

Member Typedef Documentation

template<class TKey, class TDat>
typedef THashKeyDat<TKey, TDat> THashKeyDatI< TKey, TDat >::THKeyDat

Definition at line 51 of file hash.h.

Constructor & Destructor Documentation

template<class TKey, class TDat>
THashKeyDatI< TKey, TDat >::THashKeyDatI ( )
inline

Definition at line 56 of file hash.h.

56 : KeyDatI(NULL), EndI(NULL){}
THKeyDat * KeyDatI
Definition: hash.h:53
THKeyDat * EndI
Definition: hash.h:54
template<class TKey, class TDat>
THashKeyDatI< TKey, TDat >::THashKeyDatI ( const THashKeyDatI< TKey, TDat > &  _HashKeyDatI)
inline

Definition at line 57 of file hash.h.

57  :
58  KeyDatI(_HashKeyDatI.KeyDatI), EndI(_HashKeyDatI.EndI){}
THKeyDat * KeyDatI
Definition: hash.h:53
THKeyDat * EndI
Definition: hash.h:54
template<class TKey, class TDat>
THashKeyDatI< TKey, TDat >::THashKeyDatI ( const THKeyDat _KeyDatI,
const THKeyDat _EndI 
)
inline

Definition at line 59 of file hash.h.

59  :
60  KeyDatI((THKeyDat*)_KeyDatI), EndI((THKeyDat*)_EndI){}
THKeyDat * KeyDatI
Definition: hash.h:53
THashKeyDat< TKey, TDat > THKeyDat
Definition: hash.h:51
THKeyDat * EndI
Definition: hash.h:54

Member Function Documentation

template<class TKey, class TDat>
const TDat& THashKeyDatI< TKey, TDat >::GetDat ( ) const
inline

Definition at line 81 of file hash.h.

81 {Assert((KeyDatI!=NULL)&&(KeyDatI->HashCd!=-1)); return KeyDatI->Dat;}
TDat Dat
Definition: hash.h:13
THKeyDat * KeyDatI
Definition: hash.h:53
#define Assert(Cond)
Definition: bd.h:251
TInt HashCd
Definition: hash.h:11
template<class TKey, class TDat>
TDat& THashKeyDatI< TKey, TDat >::GetDat ( )
inline

Definition at line 82 of file hash.h.

82 {Assert((KeyDatI!=NULL)&&(KeyDatI->HashCd!=-1)); return KeyDatI->Dat;}
TDat Dat
Definition: hash.h:13
THKeyDat * KeyDatI
Definition: hash.h:53
#define Assert(Cond)
Definition: bd.h:251
TInt HashCd
Definition: hash.h:11
template<class TKey, class TDat>
const TKey& THashKeyDatI< TKey, TDat >::GetKey ( ) const
inline

Definition at line 80 of file hash.h.

80 {Assert((KeyDatI!=NULL)&&(KeyDatI->HashCd!=-1)); return KeyDatI->Key;}
THKeyDat * KeyDatI
Definition: hash.h:53
#define Assert(Cond)
Definition: bd.h:251
TKey Key
Definition: hash.h:12
TInt HashCd
Definition: hash.h:11
template<class TKey, class TDat>
bool THashKeyDatI< TKey, TDat >::IsEmpty ( ) const
inline

Tests whether the iterator has been initialized.

Definition at line 76 of file hash.h.

76 { return KeyDatI == NULL; }
THKeyDat * KeyDatI
Definition: hash.h:53
template<class TKey, class TDat>
bool THashKeyDatI< TKey, TDat >::IsEnd ( ) const
inline

Tests whether the iterator is pointing to the past-end element.

Definition at line 78 of file hash.h.

78 { return EndI == KeyDatI; }
THKeyDat * KeyDatI
Definition: hash.h:53
THKeyDat * EndI
Definition: hash.h:54
template<class TKey, class TDat>
THashKeyDatI& THashKeyDatI< TKey, TDat >::Next ( )
inline

Definition at line 73 of file hash.h.

73 { operator++(1); return *this; }
THashKeyDatI & operator++(int)
Definition: hash.h:68
template<class TKey, class TDat>
THKeyDat& THashKeyDatI< TKey, TDat >::operator() ( ) const
inline

Definition at line 71 of file hash.h.

71 { return *KeyDatI; }
THKeyDat * KeyDatI
Definition: hash.h:53
template<class TKey, class TDat>
THKeyDat& THashKeyDatI< TKey, TDat >::operator* ( ) const
inline

Definition at line 70 of file hash.h.

70 { return *KeyDatI; }
THKeyDat * KeyDatI
Definition: hash.h:53
template<class TKey, class TDat>
THashKeyDatI& THashKeyDatI< TKey, TDat >::operator++ ( int  )
inline

Definition at line 68 of file hash.h.

68 { KeyDatI++; while (KeyDatI < EndI && KeyDatI->HashCd==-1) { KeyDatI++; } return *this; }
THKeyDat * KeyDatI
Definition: hash.h:53
template<class TKey, class TDat>
THashKeyDatI& THashKeyDatI< TKey, TDat >::operator-- ( int  )
inline

Definition at line 69 of file hash.h.

69 { do { KeyDatI--; } while (KeyDatI->HashCd==-1); return *this;}
THKeyDat * KeyDatI
Definition: hash.h:53
TInt HashCd
Definition: hash.h:11
template<class TKey, class TDat>
THKeyDat* THashKeyDatI< TKey, TDat >::operator-> ( ) const
inline

Definition at line 72 of file hash.h.

72 { return KeyDatI; }
THKeyDat * KeyDatI
Definition: hash.h:53
template<class TKey, class TDat>
bool THashKeyDatI< TKey, TDat >::operator< ( const THashKeyDatI< TKey, TDat > &  HashKeyDatI) const
inline

Definition at line 66 of file hash.h.

66  {
67  return KeyDatI<HashKeyDatI.KeyDatI;}
THKeyDat * KeyDatI
Definition: hash.h:53
template<class TKey, class TDat>
THashKeyDatI& THashKeyDatI< TKey, TDat >::operator= ( const THashKeyDatI< TKey, TDat > &  HashKeyDatI)
inline

Definition at line 62 of file hash.h.

62  {
63  KeyDatI=HashKeyDatI.KeyDatI; EndI=HashKeyDatI.EndI; return *this;}
THKeyDat * KeyDatI
Definition: hash.h:53
THKeyDat * EndI
Definition: hash.h:54
template<class TKey, class TDat>
bool THashKeyDatI< TKey, TDat >::operator== ( const THashKeyDatI< TKey, TDat > &  HashKeyDatI) const
inline

Definition at line 64 of file hash.h.

64  {
65  return KeyDatI==HashKeyDatI.KeyDatI;}
THKeyDat * KeyDatI
Definition: hash.h:53

Member Data Documentation

template<class TKey, class TDat>
THKeyDat* THashKeyDatI< TKey, TDat >::EndI
private

Definition at line 54 of file hash.h.

template<class TKey, class TDat>
THKeyDat* THashKeyDatI< TKey, TDat >::KeyDatI
private

Definition at line 53 of file hash.h.


The documentation for this class was generated from the following file: