commit 2025-10-03 16:01 delete ChangeCapacity() in ZtCBaseList : ZCppMain/ZMainHead.H

This commit is contained in:
2025-10-03 16:01:49 +09:00
parent 97b1280b15
commit fee4f8aee1
4 changed files with 312 additions and 449 deletions

View File

@ -4097,12 +4097,6 @@ namespace ZNsMain
}/*
_NP_ TypeSize capacity() const*/
_NP_ void ChangeCapacity(TypeSize AI_AddCut)
{
}/*
_NP_ void ChangeCapacity(TypeSize AI_AddCut)*/
public:
};/*
template<typename TLinkList> class ZtCBody*/
@ -5398,9 +5392,9 @@ namespace ZNsMain
public :
private :
ZCLink* mp_HeadLink;
ZCLink* mp_TailLink;
TypeSize ml_LinkCnt ;
ZCLink* mp_HeadLink ;
ZCLink* mp_TailLink ;
TypeSize ml_LinkSize ;
private :
TypeChild& GetChildObj()
@ -5621,25 +5615,12 @@ namespace ZNsMain
)
/////////////////////////////////////////////////////*/
_VT_ void ChangeCapacity(TypeSize AI_AddCut)
{
if(TTypeCRTP::ZEUseCRTP<1)
{
return; /*nothing to do*/
}/*
if(TTypeCRTP::ZEUseCRTP<1)*/
GetChildObj().ChangeCapacity(AI_AddCut);
}/*
_VT_ void ChangeCapacity(TypeSize AI_AddCut)*/
/*private :*/
private :
ZCLink* AddTailLink(ZCLink* AP_NewLink)
{
if(ml_LinkCnt<1)
if(ml_LinkSize<1)
{
mp_HeadLink = AP_NewLink;
mp_TailLink = AP_NewLink;
@ -5647,14 +5628,14 @@ namespace ZNsMain
ZCLink::MakeRing
( mp_HeadLink, mp_TailLink ) ;
ml_LinkCnt= 1; return AP_NewLink;
ml_LinkSize= 1; return AP_NewLink;
}/*
if(ml_LinkCnt<1)*/
if(ml_LinkSize<1)*/
ZCLink::JoinLink(mp_TailLink, AP_NewLink) ;
ZCLink::MakeRing(mp_HeadLink, AP_NewLink) ;
mp_TailLink = AP_NewLink; ++ml_LinkCnt ;
mp_TailLink = AP_NewLink; ++ml_LinkSize ;
return AP_NewLink; /*::::::::::::::::::::*/
}/*
@ -5662,7 +5643,7 @@ namespace ZNsMain
ZCLink* AddHeadLink(ZCLink* AP_NewLink)
{
if(ml_LinkCnt<1)
if(ml_LinkSize<1)
{
mp_HeadLink = AP_NewLink;
mp_TailLink = AP_NewLink;
@ -5670,14 +5651,14 @@ namespace ZNsMain
ZCLink::MakeRing
( mp_HeadLink, mp_TailLink ) ;
ml_LinkCnt= 1; return AP_NewLink;
ml_LinkSize= 1; return AP_NewLink;
}/*
if(ml_LinkCnt<1)*/
if(ml_LinkSize<1)*/
ZCLink::JoinLink(AP_NewLink, mp_HeadLink) ;
ZCLink::MakeRing(AP_NewLink, mp_TailLink) ;
mp_HeadLink = AP_NewLink; ++ml_LinkCnt ;
mp_HeadLink = AP_NewLink; ++ml_LinkSize ;
return AP_NewLink; /*::::::::::::::::::::*/
}/*
@ -5691,7 +5672,7 @@ namespace ZNsMain
{
mp_HeadLink = 0 ;
mp_TailLink = 0 ;
ml_LinkCnt = 0 ;
ml_LinkSize = 0 ;
}/*
ZtCBaseList()*/
@ -5699,7 +5680,7 @@ namespace ZNsMain
{
mp_HeadLink = 0 ;
mp_TailLink = 0 ;
ml_LinkCnt = 0 ;
ml_LinkSize = 0 ;
*this = (rhs);
}/*
@ -5731,7 +5712,7 @@ namespace ZNsMain
);
///////////////////////////////////////////////////
ml_LinkCnt -= VL_MinusSize;
ml_LinkSize -= VL_MinusSize;
}
else if(VL_MinusSize<0)
{
@ -5746,7 +5727,7 @@ namespace ZNsMain
);
///////////////////////////////////////////////////
if(ml_LinkCnt>0)
if(ml_LinkSize>0)
{
ZCLink::JoinLink(mp_TailLink, VP_HeadLink);
ZCLink::MakeRing(mp_HeadLink, VP_TailLink);
@ -5762,7 +5743,7 @@ namespace ZNsMain
}/*
else*/
ml_LinkCnt += (-VL_MinusSize);
ml_LinkSize += (-VL_MinusSize);
}/*
else if(VL_MinusSize<0)*/
@ -5786,14 +5767,14 @@ namespace ZNsMain
void DeleteAll()
{
if(ml_LinkCnt<1) return;
if(ml_LinkSize<1) return;
RecvFreeIn
(ml_LinkCnt, mp_HeadLink, mp_TailLink);
(ml_LinkSize, mp_HeadLink, mp_TailLink);
mp_HeadLink =0 ;
mp_TailLink =0 ;
ml_LinkCnt =0 ;
ml_LinkSize =0 ;
}/*
void DeleteAll()*/
@ -5864,18 +5845,18 @@ namespace ZNsMain
void DeleteHead()
{
if(ml_LinkCnt<1) return;
if(ml_LinkSize<1) return;
ZCLink* VP_TempLink = mp_HeadLink ;
mp_HeadLink = mp_HeadLink->mp_NextLink ;
RecvFreeIn(VP_TempLink);
if(--ml_LinkCnt<1)
if(--ml_LinkSize<1)
{
mp_HeadLink = mp_TailLink =0; return;
}/*
if(--ml_LinkCnt<1)*/
if(--ml_LinkSize<1)*/
ZCLink::MakeRing(mp_HeadLink, mp_TailLink);
}/*
@ -5884,18 +5865,18 @@ namespace ZNsMain
void DeleteTail()
{
if(ml_LinkCnt<1) return;
if(ml_LinkSize<1) return;
ZCLink* VP_TempLink = mp_TailLink ;
mp_TailLink = mp_TailLink->mp_PrevLink ;
RecvFreeIn(VP_TempLink);
if(--ml_LinkCnt<1)
if(--ml_LinkSize<1)
{
mp_HeadLink = mp_TailLink =0; return;
}/*
if(--ml_LinkCnt<1)*/
if(--ml_LinkSize<1)*/
ZCLink::MakeRing(mp_HeadLink, mp_TailLink);
}/*
@ -5906,34 +5887,31 @@ namespace ZNsMain
{
// AP_StdLink 의 뒤에 rhs 를 삽입.
if(rhs.ml_LinkCnt<1) return *this;
this->ChangeCapacity( rhs.ml_LinkCnt) ;
rhs. ChangeCapacity(-rhs.ml_LinkCnt) ;
if(rhs.ml_LinkSize<1) return *this;
if(AP_StdLink==0) // 맨 앞에 삽입
{
if(ml_LinkCnt<1)
if(ml_LinkSize<1)
{
mp_HeadLink =rhs.mp_HeadLink;
mp_TailLink =rhs.mp_TailLink;
ml_LinkCnt =rhs.ml_LinkCnt ;
mp_HeadLink = rhs.mp_HeadLink ;
mp_TailLink = rhs.mp_TailLink ;
ml_LinkSize = rhs.ml_LinkSize ;
}
else // ml_LinkCnt>=1
else // ml_LinkSize>=1
{
ZCLink::JoinLink( rhs.mp_TailLink, mp_HeadLink );
ZCLink::MakeRing( rhs.mp_HeadLink, mp_TailLink );
mp_HeadLink =rhs.mp_HeadLink;
ml_LinkCnt =rhs.ml_LinkCnt ;
mp_HeadLink = rhs.mp_HeadLink ;
ml_LinkSize = rhs.ml_LinkSize ;
}/*
else // ml_LinkCnt>=1*/
else // ml_LinkSize>=1*/
ml_LinkCnt += rhs.ml_LinkCnt;
ml_LinkSize += rhs.ml_LinkSize;
rhs.mp_HeadLink = 0 ;
rhs.mp_TailLink = 0 ;
rhs.ml_LinkCnt = 0 ;
rhs.ml_LinkSize = 0 ;
return *this;
}/*
@ -5948,11 +5926,11 @@ namespace ZNsMain
if(AP_StdLink==mp_TailLink)
{ mp_TailLink=rhs.mp_TailLink; }
rhs.mp_HeadLink=0;
rhs.mp_TailLink=0;
rhs.ml_LinkCnt =0;
rhs.mp_HeadLink =0 ;
rhs.mp_TailLink =0 ;
rhs.ml_LinkSize =0 ;
ml_LinkCnt += rhs.ml_LinkCnt; return *this;
ml_LinkSize += rhs.ml_LinkSize; return *this;
}/*
ZtCBaseList& JoinAfter(ZtCBaseList& rhs, ZCLink* AP_StdLink)*/
@ -5965,30 +5943,27 @@ namespace ZNsMain
if(AP_StdLink==0) // 맨 뒤에 삽입
{
if(ml_LinkCnt<1)
if(ml_LinkSize<1)
{
mp_HeadLink =rhs.mp_HeadLink;
mp_TailLink =rhs.mp_TailLink;
ml_LinkCnt =rhs.ml_LinkCnt ;
mp_HeadLink = rhs.mp_HeadLink ;
mp_TailLink = rhs.mp_TailLink ;
ml_LinkSize = rhs.ml_LinkSize ;
}
else // ml_LinkCnt>=1
else // ml_LinkSize>=1
{
ZCLink::JoinLink(mp_TailLink, rhs.mp_HeadLink );
ZCLink::MakeRing(mp_HeadLink, rhs.mp_TailLink );
mp_TailLink = rhs.mp_TailLink ;
ml_LinkCnt += rhs.ml_LinkCnt ;
mp_TailLink = rhs.mp_TailLink ;
ml_LinkSize += rhs.ml_LinkSize ;
}/*
else // ml_LinkCnt>=1*/
this->ChangeCapacity( rhs.ml_LinkCnt) ;
rhs. ChangeCapacity(-rhs.ml_LinkCnt) ;
else // ml_LinkSize>=1*/
rhs.mp_HeadLink=0;
rhs.mp_TailLink=0;
rhs.ml_LinkCnt =0;
rhs.ml_LinkSize=0;
ml_LinkCnt += rhs.ml_LinkCnt; return *this;
ml_LinkSize += rhs.ml_LinkSize; return *this;
}/*
if(AP_StdLink==0)*/
@ -6001,14 +5976,11 @@ namespace ZNsMain
if(AP_StdLink==mp_HeadLink)
{ mp_HeadLink = rhs.mp_HeadLink; }
this->ChangeCapacity( rhs.ml_LinkCnt) ;
rhs. ChangeCapacity(-rhs.ml_LinkCnt) ;
rhs.mp_HeadLink =0 ;
rhs.mp_TailLink =0 ;
rhs.ml_LinkSize =0 ;
rhs.mp_HeadLink=0;
rhs.mp_TailLink=0;
rhs.ml_LinkCnt =0;
ml_LinkCnt += rhs.ml_LinkCnt; return *this;
ml_LinkSize += rhs.ml_LinkSize; return *this;
}/*
ZtCBaseList& JoinBefore(ZtCBaseList& rhs, ZCLink* AP_StdLink)*/
@ -6028,8 +6000,8 @@ namespace ZNsMain
operator TypeData&() { return AddTail() ; }
TypeSize size() const{ return ml_LinkCnt; }
TypeSize GetSize() const{ return ml_LinkCnt; }
TypeSize size() const{ return ml_LinkSize; }
TypeSize GetSize() const{ return ml_LinkSize; }
void push_front(TypeArg AO_ArgData){AddHead(AO_ArgData);}
@ -6050,7 +6022,7 @@ namespace ZNsMain
{
ZCLink* VP_LoopLink=mp_HeadLink;
__for0(TypeSize, i, ml_LinkCnt)
__for0(TypeSize, i, ml_LinkSize)
{
ZtCTypeData<TFunctor>::
GetObjRef(AO_Functor)(VP_LoopLink->mo_Data);
@ -6097,7 +6069,7 @@ namespace ZNsMain
ZCLink* VP_LoopLink=mp_HeadLink;
__for0(TypeSize, i, ml_LinkCnt)
__for0(TypeSize, i, ml_LinkSize)
{
ZtCTypeData<TFunctor>::GetObjRef(AO_Functor)
(
@ -6130,7 +6102,7 @@ namespace ZNsMain
ZCLink* VP_LoopLink=mp_HeadLink;
__for0(TypeSize, i, ml_LinkCnt)
__for0(TypeSize, i, ml_LinkSize)
{
ZtCTypeData<TFunctor>::GetObjRef(AO_Functor)
(
@ -6155,7 +6127,7 @@ namespace ZNsMain
{
ZCLink* VP_LoopLink=mp_TailLink;
__for0(TypeSize, i, ml_LinkCnt)
__for0(TypeSize, i, ml_LinkSize)
{
ZtCTypeData<TFunctor>::
GetObjRef(AO_Functor)(VP_LoopLink->mo_Data);
@ -6174,7 +6146,7 @@ namespace ZNsMain
ZCLink* VP_LoopLink = mp_TailLink;
__for0(TypeSize, i, ml_LinkCnt)
__for0(TypeSize, i, ml_LinkSize)
{
ZtCTypeData<TFunctor>::GetObjRef(AO_Functor)
(
@ -6199,7 +6171,7 @@ namespace ZNsMain
ZCLink* VP_LoopLink = mp_TailLink;
__for0(TypeSize, i, ml_LinkCnt)
__for0(TypeSize, i, ml_LinkSize)
{
ZtCTypeData<TFunctor>::GetObjRef(AO_Functor)
(