commit 2025-10-12 00:58 add ZtCObjList::mp_TailLink : ZCppMain/ZtCObjList.H

This commit is contained in:
2025-10-12 00:58:51 +09:00
parent a46afc5865
commit 8f8ddb9460
3 changed files with 1382 additions and 1623 deletions

View File

@ -6331,14 +6331,6 @@ namespace ZNsMain
}/*
_VT_ ZCLink* SendFreeOut() const*/
_VT_ ZCLink* SendFreeOut(TypeArg AO_ArgData) const
{
if(TTypeCRTP::ZEUseCRTP<1)
{ return NewLink(AO_ArgData); }
return GetChildObj().SendFreeOut(AO_ArgData);
}/*
_VT_ ZCLink* SendFreeOut(TypeArg AO_ArgData) const*/
_VT_ void SendFreeOut
(TypeSize AL_NeedCnt, ZCLink*& APR_HeadLink, ZCLink*& APR_TailLink) const
@ -6848,7 +6840,7 @@ namespace ZNsMain
#if(_CODE_NEW_)
if(TypeMoveObj::ZEUseMoveObj>0) ////////////////////
{
ZCLink* VP_NewNode = SendFreeOut(AO_ArgData);
ZCLink* VP_NewNode = SendFreeOut();
TypeMoveObj::Exec(**VP_NewNode, AO_ArgData);
@ -6865,7 +6857,7 @@ namespace ZNsMain
#if(_CODE_NEW_)
if(TypeMoveObj::ZEUseMoveObj>0) ////////////////////
{
ZCLink* VP_NewNode = SendFreeOut(AO_ArgData);
ZCLink* VP_NewNode = SendFreeOut();
TypeMoveObj::Exec(*VP_NewNode, AO_ArgData);
@ -7950,7 +7942,6 @@ namespace ZNsMain
const ZCLink& TailRef(TypeSize AI_Distance) const{return (*mp_TailLink)-AI_Distance;}
ZCLinkOpt HeadOpt(){return ZCLinkOpt(mp_HeadLink);}
ZCLinkOpt TailOpt(){return ZCLinkOpt(mp_TailLink);}
@ -7981,6 +7972,70 @@ namespace ZNsMain
const ZCLink& _0(TypeSize AI_Distance) const{return TailRef(AI_Distance);}
ZCDataOpt GetDataOpt(TypeSize AI_Index) // 1부터 시작.
{
return DataOpt(AI_Index-1);
}/*
ZCDataOpt GetDataOpt(TypeSize AI_Index)*/
const ZCDataOpt GetDataOpt(TypeSize AI_Index) const
{
return DataOpt(AI_Index-1);
}/*
const ZCDataOpt GetDataOpt(TypeSize AI_Index) const*/
ZCDataOpt DataOpt(TypeSize AI_Index) // 1부터
{
if(mp_HeadLink==0){return ZCDataOpt(0);}
return ZCDataOpt(**HeadPtr(AI_Index-1));
}/*
ZCDataOpt DataOpt(TypeSize AI_Index)*/
const ZCDataOpt DataOpt(TypeSize AI_Index) const
{
if(mp_HeadLink==0){return ZCDataOpt(0);}
return ZCDataOpt(**HeadPtr(AI_Index-1));
}/*
const ZCDataOpt DataOpt(TypeSize AI_Index) const*/
ZCDataOpt DataOptHead(TypeSize AI_Distance=0)
{
if(mp_HeadLink==0){return ZCDataOpt(0);}
return ZCDataOpt(**HeadPtr(AI_Distance));
}/*
ZCDataOpt DataOptHead(TypeSize AI_Distance=0)*/
ZCDataOpt DataOptTail(TypeSize AI_Distance=0)
{
if(mp_HeadLink==0){return ZCDataOpt(0);}
return ZCDataOpt(**TailPtr(AI_Distance));
}/*
ZCDataOpt DataOptTail(TypeSize AI_Distance=0)*/
const ZCDataOpt DataOptHead(TypeSize AI_Distance=0) const
{
if(mp_HeadLink==0){return ZCDataOpt(0);}
return ZCDataOpt(**HeadPtr(AI_Distance));
}/*
const ZCDataOpt DataOptHead(TypeSize AI_Distance=0) const*/
const ZCDataOpt DataOptTail(TypeSize AI_Distance=0) const
{
if(mp_HeadLink==0){return ZCDataOpt(0);}
return ZCDataOpt(**TailPtr(AI_Distance));
}/*
const ZCDataOpt DataOptTail(TypeSize AI_Distance=0) const*/
/***/ ZCLinkOpt GetLinkOpt(TypeSize AI_Index)
{ if(mp_HeadLink==0) return ZCLinkOpt(0); return ZCLinkOpt(GetLinkPtr(AI_Index)); }
const ZCLinkOpt GetLinkOpt(TypeSize AI_Index) const

File diff suppressed because it is too large Load Diff