diff options
Diffstat (limited to 'Source/cmDefinitions.cxx')
-rw-r--r-- | Source/cmDefinitions.cxx | 94 |
1 files changed, 39 insertions, 55 deletions
diff --git a/Source/cmDefinitions.cxx b/Source/cmDefinitions.cxx index e8b898d..28b6677 100644 --- a/Source/cmDefinitions.cxx +++ b/Source/cmDefinitions.cxx @@ -15,54 +15,50 @@ cmDefinitions::Def cmDefinitions::NoDef; -cmDefinitions::Def const& cmDefinitions::GetInternal( - const std::string& key, StackIter begin, StackIter end, bool raise) +cmDefinitions::Def const& cmDefinitions::GetInternal(const std::string& key, + StackIter begin, + StackIter end, bool raise) { assert(begin != end); MapType::iterator i = begin->Map.find(key); - if (i != begin->Map.end()) - { + if (i != begin->Map.end()) { i->second.Used = true; return i->second; - } + } StackIter it = begin; ++it; - if (it == end) - { + if (it == end) { return cmDefinitions::NoDef; - } + } Def const& def = cmDefinitions::GetInternal(key, it, end, raise); - if (!raise) - { + if (!raise) { return def; - } + } return begin->Map.insert(MapType::value_type(key, def)).first->second; } -const char* cmDefinitions::Get(const std::string& key, - StackIter begin, StackIter end) +const char* cmDefinitions::Get(const std::string& key, StackIter begin, + StackIter end) { Def const& def = cmDefinitions::GetInternal(key, begin, end, false); - return def.Exists? def.c_str() : 0; + return def.Exists ? def.c_str() : 0; } -void cmDefinitions::Raise(const std::string& key, - StackIter begin, StackIter end) +void cmDefinitions::Raise(const std::string& key, StackIter begin, + StackIter end) { cmDefinitions::GetInternal(key, begin, end, true); } -bool cmDefinitions::HasKey(const std::string& key, - StackIter begin, StackIter end) +bool cmDefinitions::HasKey(const std::string& key, StackIter begin, + StackIter end) { - for (StackIter it = begin; it != end; ++it) - { + for (StackIter it = begin; it != end; ++it) { MapType::const_iterator i = it->Map.find(key); - if (i != it->Map.end()) - { + if (i != it->Map.end()) { return true; - } } + } return false; } @@ -77,65 +73,53 @@ std::vector<std::string> cmDefinitions::UnusedKeys() const std::vector<std::string> keys; keys.reserve(this->Map.size()); // Consider local definitions. - for(MapType::const_iterator mi = this->Map.begin(); - mi != this->Map.end(); ++mi) - { - if (!mi->second.Used) - { + for (MapType::const_iterator mi = this->Map.begin(); mi != this->Map.end(); + ++mi) { + if (!mi->second.Used) { keys.push_back(mi->first); - } } + } return keys; } -cmDefinitions cmDefinitions::MakeClosure(StackIter begin, - StackIter end) +cmDefinitions cmDefinitions::MakeClosure(StackIter begin, StackIter end) { cmDefinitions closure; std::set<std::string> undefined; - for (StackIter it = begin; it != end; ++it) - { + for (StackIter it = begin; it != end; ++it) { // Consider local definitions. - for(MapType::const_iterator mi = it->Map.begin(); - mi != it->Map.end(); ++mi) - { + for (MapType::const_iterator mi = it->Map.begin(); mi != it->Map.end(); + ++mi) { // Use this key if it is not already set or unset. - if(closure.Map.find(mi->first) == closure.Map.end() && - undefined.find(mi->first) == undefined.end()) - { - if(mi->second.Exists) - { + if (closure.Map.find(mi->first) == closure.Map.end() && + undefined.find(mi->first) == undefined.end()) { + if (mi->second.Exists) { closure.Map.insert(*mi); - } - else - { + } else { undefined.insert(mi->first); - } } } } + } return closure; } -std::vector<std::string> -cmDefinitions::ClosureKeys(StackIter begin, StackIter end) +std::vector<std::string> cmDefinitions::ClosureKeys(StackIter begin, + StackIter end) { std::set<std::string> bound; std::vector<std::string> defined; - for (StackIter it = begin; it != end; ++it) - { + for (StackIter it = begin; it != end; ++it) { defined.reserve(defined.size() + it->Map.size()); - for(MapType::const_iterator mi = it->Map.begin(); - mi != it->Map.end(); ++mi) - { + for (MapType::const_iterator mi = it->Map.begin(); mi != it->Map.end(); + ++mi) { // Use this key if it is not already set or unset. - if(bound.insert(mi->first).second && mi->second.Exists) - { + if (bound.insert(mi->first).second && mi->second.Exists) { defined.push_back(mi->first); - } } } + } return defined; } |