- Timestamp:
- Dec 2, 2015, 11:22:03 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/cpp11_v2/src/libraries/core/class/Identifier.cc
r10821 r10916 87 87 for (std::list<const Identifier*>::const_iterator it = this->directParents_.begin(); it != this->directParents_.end(); ++it) 88 88 const_cast<Identifier*>(*it)->directChildren_.erase(this); 89 for (const auto & elem: this->children_)90 const_cast<Identifier*>( elem)->parents_.remove(this);91 for (const auto & elem: this->directChildren_)92 const_cast<Identifier*>( elem)->directParents_.remove(this);93 94 for (auto & elem: this->configValues_)95 delete ( elem.second);96 for (auto & elem: this->xmlportParamContainers_)97 delete ( elem.second);98 for (auto & elem: this->xmlportObjectContainers_)99 delete ( elem.second);89 for (const Identifier* child : this->children_) 90 const_cast<Identifier*>(child)->parents_.remove(this); 91 for (const Identifier* directChild : this->directChildren_) 92 const_cast<Identifier*>(directChild)->directParents_.remove(this); 93 94 for (auto& mapEntry : this->configValues_) 95 delete (mapEntry.second); 96 for (auto& mapEntry : this->xmlportParamContainers_) 97 delete (mapEntry.second); 98 for (auto& mapEntry : this->xmlportObjectContainers_) 99 delete (mapEntry.second); 100 100 } 101 101 … … 157 157 if (this->directParents_.empty()) 158 158 { 159 for (const auto & elem: initializationTrace)160 if ( elem!= this)161 this->parents_.push_back( elem);159 for (const Identifier* identifier : initializationTrace) 160 if (identifier != this) 161 this->parents_.push_back(identifier); 162 162 } 163 163 else … … 261 261 262 262 // if any parent class is virtual, it will be instantiated first, so we need to add them first. 263 for (const auto & elem: this->parents_)264 { 265 if ( (elem)->isVirtualBase())263 for (const Identifier* parent : this->parents_) 264 { 265 if (parent->isVirtualBase()) 266 266 { 267 for (std::list<const Identifier*>::const_iterator it_parent_parent = const_cast<Identifier*>( elem)->parents_.begin(); it_parent_parent != const_cast<Identifier*>(elem)->parents_.end(); ++it_parent_parent)267 for (std::list<const Identifier*>::const_iterator it_parent_parent = const_cast<Identifier*>(parent)->parents_.begin(); it_parent_parent != const_cast<Identifier*>(parent)->parents_.end(); ++it_parent_parent) 268 268 this->addIfNotExists(expectedIdentifierTrace, *it_parent_parent); 269 this->addIfNotExists(expectedIdentifierTrace, elem);269 this->addIfNotExists(expectedIdentifierTrace, parent); 270 270 } 271 271 } 272 272 273 273 // now all direct parents get created recursively. already added identifiers (e.g. virtual base classes) are not added again. 274 for (const auto & elem: this->directParents_)275 { 276 for (std::list<const Identifier*>::const_iterator it_parent_parent = const_cast<Identifier*>( elem)->parents_.begin(); it_parent_parent != const_cast<Identifier*>(elem)->parents_.end(); ++it_parent_parent)274 for (const Identifier* directParent : this->directParents_) 275 { 276 for (std::list<const Identifier*>::const_iterator it_parent_parent = const_cast<Identifier*>(directParent)->parents_.begin(); it_parent_parent != const_cast<Identifier*>(directParent)->parents_.end(); ++it_parent_parent) 277 277 this->addIfNotExists(expectedIdentifierTrace, *it_parent_parent); 278 this->addIfNotExists(expectedIdentifierTrace, elem);278 this->addIfNotExists(expectedIdentifierTrace, directParent); 279 279 } 280 280 … … 285 285 286 286 orxout(internal_warning) << " Actual trace (after creating a sample instance):" << endl << " "; 287 for (const auto & elem: this->parents_)288 orxout(internal_warning) << " " << (elem)->getName();287 for (const Identifier* parent : this->parents_) 288 orxout(internal_warning) << " " << parent->getName(); 289 289 orxout(internal_warning) << endl; 290 290 … … 295 295 296 296 orxout(internal_warning) << " Direct parents (according to class hierarchy definitions):" << endl << " "; 297 for (const auto & elem: this->directParents_)298 orxout(internal_warning) << " " << (elem)->getName();297 for (const Identifier* directParent : this->directParents_) 298 orxout(internal_warning) << " " << directParent->getName(); 299 299 orxout(internal_warning) << endl; 300 300 }
Note: See TracChangeset
for help on using the changeset viewer.