MCPcopy Create free account
hub / github.com/doldecomp/mkdd / insert

Method insert

libs/JSystem/JSupport/JSUList.cpp:96–126  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

94}
95
96bool JSUPtrList::insert(JSUPtrLink *pLink_1, JSUPtrLink *pLink_2) {
97 if (pLink_1 == mHead) {
98 return prepend(pLink_2);
99 }
100 if (!pLink_1) {
101 return append(pLink_2);
102 }
103 if (pLink_1->mPtrList != this) {
104 return false;
105 }
106
107 JSUPtrList* link2PtrList = pLink_2->mPtrList;
108
109 bool validity = (link2PtrList == 0);
110
111 if (!validity) {
112 validity = link2PtrList->remove(pLink_2);
113 }
114
115 if (validity) {
116 JSUPtrLink* prev = pLink_1->mPrev;
117 pLink_2->mPtrList = this;
118 pLink_2->mPrev = prev;
119 pLink_2->mNext = pLink_1;
120 prev->mNext = pLink_2;
121 pLink_1->mPrev = pLink_2;
122 mLinkCount++;
123 }
124
125 return validity;
126}
127
128bool JSUPtrList::remove(JSUPtrLink *pLink) {
129 bool isSameList = (pLink->mPtrList == this);

Callers 4

generate_build_ninjaFunction · 0.45
c_buildFunction · 0.45
allocHeadMethod · 0.45
allocTailMethod · 0.45

Calls 1

removeMethod · 0.45

Tested by

no test coverage detected