summaryrefslogtreecommitdiffstats
path: root/Source/cmDefinitions.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2015-04-26 14:13:56 (GMT)
committerStephen Kelly <steveire@gmail.com>2015-04-29 21:54:17 (GMT)
commitaa4d1ee80f1ced5b09335cc84bdd373c0875fd80 (patch)
tree17b4cc2a21e72453fa93439e3497c18fca0624c3 /Source/cmDefinitions.cxx
parent60becdc65c5f8cfad4b2c6a33e3649d2acbddf39 (diff)
downloadCMake-aa4d1ee80f1ced5b09335cc84bdd373c0875fd80.zip
CMake-aa4d1ee80f1ced5b09335cc84bdd373c0875fd80.tar.gz
CMake-aa4d1ee80f1ced5b09335cc84bdd373c0875fd80.tar.bz2
cmDefinitions: Convert MakeClosure into a static method.
Accept a range of cmDefinitions*.
Diffstat (limited to 'Source/cmDefinitions.cxx')
-rw-r--r--Source/cmDefinitions.cxx13
1 files changed, 4 insertions, 9 deletions
diff --git a/Source/cmDefinitions.cxx b/Source/cmDefinitions.cxx
index 873a7b4..d1fbe74 100644
--- a/Source/cmDefinitions.cxx
+++ b/Source/cmDefinitions.cxx
@@ -75,18 +75,13 @@ std::vector<std::string> cmDefinitions::LocalKeys() const
}
//----------------------------------------------------------------------------
-cmDefinitions cmDefinitions::MakeClosure() const
+cmDefinitions cmDefinitions::MakeClosure(
+ std::list<cmDefinitions const*>::iterator begin,
+ std::list<cmDefinitions const*>::iterator end)
{
std::set<std::string> undefined;
cmDefinitions closure;
- cmDefinitions const* defs = this;
- std::list<cmDefinitions const*> ups;
- while(defs)
- {
- ups.push_back(defs);
- defs = defs->Up;
- }
- closure.MakeClosure(undefined, ups.begin(), ups.end());
+ closure.MakeClosure(undefined, begin, end);
return closure;
}