6#ifndef _ZFI_zfstlmap_h_
7#define _ZFI_zfstlmap_h_
15 #define zfstlmap std::map
20 #define zfstlless std::less
26template<
typename T_Key,
typename T_Value,
typename T_Compare = zfstlless<T_Key> >
27class zfimplmap :
public zfstlmap<T_Key, T_Value, T_Compare> {
31 typename zfimplmap<T_Key, T_Value, T_Compare>::iterator it;
32 typename zfimplmap<T_Key, T_Value, T_Compare>::iterator end;
35 virtual zfbool valid(
void) {
39 virtual void next(
void) {
43 virtual Impl *copy(
void) {
50 virtual void destroy(
void) {
55 _Iter *t = (_Iter *)d;
63 impl->it = this->begin();
64 impl->end = this->end();
70 impl->it = this->find(key);
71 impl->end = this->end();
76 return it.impl<_Iter *>()->it->first;
79 return it.impl<_Iter *>()->it->second;
84 ,
ZF_IN T_Value
const &newValue
86 it.impl<_Iter *>()->it->second = newValue;
89 this->erase((it.impl<_Iter *>()->it)++);
93 ZF_IN T_Key
const &key
94 ,
ZF_IN T_Value
const &value
#define zffinal
dummy macro shows that a method or class is designed must not to be overrided
Definition ZFCoreTypeDef_ClassType.h:63
#define zfextend
dummy macro shows class inherit from another
Definition ZFCoreTypeDef_ClassType.h:53
#define zfoverride
dummy macro shows that method override parent's method
Definition ZFCoreTypeDef_ClassType.h:58
#define ZF_IN
dummy macro that shows the param used as required input
Definition ZFCoreTypeDef_ClassType.h:180
#define zfclassNotPOD
shows the class is not a POD type, you should not memset it or declare it in stack or copy value by c...
Definition ZFCoreTypeDef_ClassType.h:48
#define ZF_IN_OUT
dummy macro that shows the param used as required input and output
Definition ZFCoreTypeDef_ClassType.h:196
_ZFT_t_zfbool zfbool
bool type
Definition ZFCoreTypeDef_CoreType.h:103
#define zfpoolDelete(obj)
see zfpoolNew
Definition ZFMemPool.h:38
#define zfpoolNew(T_Type,...)
internal use only, for allocating internal types for performance
Definition ZFMemPool.h:37
see zfiter
Definition zfiter.h:84
iterator for ZFFramework
Definition zfiter.h:40
#define zfstlmap
stl wrapper
Definition zfstlmap.h:15
stl wrapper, note it's internal use only
#define zfstlpair
stl wrapper
Definition zfstlpair.h:15