cmState: Add an accessor for Parent snapshot and a validity check.
This commit is contained in:
parent
e7f7c2e208
commit
48a9e91b02
|
@ -522,3 +522,24 @@ void cmState::Snapshot::SetCurrentBinaryDirectory(std::string const& dir)
|
|||
cmSystemTools::CollapseFullPath(
|
||||
this->State->OutputLocations[this->Position]);
|
||||
}
|
||||
|
||||
bool cmState::Snapshot::IsValid() const
|
||||
{
|
||||
return this->State ? true : false;
|
||||
}
|
||||
|
||||
cmState::Snapshot cmState::Snapshot::GetParent() const
|
||||
{
|
||||
Snapshot snapshot;
|
||||
if (!this->State)
|
||||
{
|
||||
return snapshot;
|
||||
}
|
||||
PositionType parentPos = this->State->ParentPositions[this->Position];
|
||||
if (parentPos > 0)
|
||||
{
|
||||
snapshot = Snapshot(this->State, parentPos);
|
||||
}
|
||||
|
||||
return snapshot;
|
||||
}
|
||||
|
|
|
@ -36,6 +36,9 @@ public:
|
|||
const char* GetCurrentBinaryDirectory() const;
|
||||
void SetCurrentBinaryDirectory(std::string const& dir);
|
||||
|
||||
bool IsValid() const;
|
||||
Snapshot GetParent() const;
|
||||
|
||||
private:
|
||||
friend class cmState;
|
||||
cmState* State;
|
||||
|
|
Loading…
Reference in New Issue