summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar guyingzhao2025-04-06 12:18:23 +0200
committerGravatar Nikias Bassen2025-04-06 12:18:23 +0200
commite6f3c6c62111b37cc97db2d61a1c765695ee401a (patch)
treeea39e49b6587443d070a0edeccef6c8dffe35c8e /src
parented8a73301b844bf5f7efd9cd437c9c0765a49a88 (diff)
downloadlibplist-e6f3c6c62111b37cc97db2d61a1c765695ee401a.tar.gz
libplist-e6f3c6c62111b37cc97db2d61a1c765695ee401a.tar.bz2
C++: Array: Add const Node& variants to Append, Insert
Diffstat (limited to 'src')
-rw-r--r--src/Array.cpp21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/Array.cpp b/src/Array.cpp
index 7051ed9..de1259e 100644
--- a/src/Array.cpp
+++ b/src/Array.cpp
@@ -134,7 +134,7 @@ size_t Array::size() const {
134 return _array.size(); 134 return _array.size();
135} 135}
136 136
137void Array::Append(Node* node) 137void Array::Append(const Node* node)
138{ 138{
139 if (node) 139 if (node)
140 { 140 {
@@ -145,7 +145,12 @@ void Array::Append(Node* node)
145 } 145 }
146} 146}
147 147
148void Array::Insert(Node* node, unsigned int pos) 148void Array::Append(const Node& node)
149{
150 Append(&node);
151}
152
153void Array::Insert(const Node* node, unsigned int pos)
149{ 154{
150 if (node) 155 if (node)
151 { 156 {
@@ -158,6 +163,11 @@ void Array::Insert(Node* node, unsigned int pos)
158 } 163 }
159} 164}
160 165
166void Array::Insert(const Node &node, unsigned int pos)
167{
168 Insert(&node, pos);
169}
170
161void Array::Remove(Node* node) 171void Array::Remove(Node* node)
162{ 172{
163 if (node) 173 if (node)
@@ -183,10 +193,15 @@ void Array::Remove(unsigned int pos)
183 _array.erase(it); 193 _array.erase(it);
184} 194}
185 195
186unsigned int Array::GetNodeIndex(Node* node) const 196unsigned int Array::GetNodeIndex(const Node* node) const
187{ 197{
188 std::vector<Node*>::const_iterator it = std::find(_array.begin(), _array.end(), node); 198 std::vector<Node*>::const_iterator it = std::find(_array.begin(), _array.end(), node);
189 return std::distance (_array.begin(), it); 199 return std::distance (_array.begin(), it);
190} 200}
191 201
202unsigned int Array::GetNodeIndex(const Node& node) const
203{
204 return GetNodeIndex(&node);
205}
206
192} // namespace PList 207} // namespace PList