From 27ff19a96a7d12f2ed6d9683ef733eff6378472a Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 8 Jun 2015 20:09:55 +0200 Subject: [PATCH] cmLinkedTree: Add operator* to the iterator. --- Source/cmLinkedTree.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Source/cmLinkedTree.h b/Source/cmLinkedTree.h index d2339c4f5..df00b30ff 100644 --- a/Source/cmLinkedTree.h +++ b/Source/cmLinkedTree.h @@ -87,6 +87,24 @@ public: return this->Tree->GetPointer(this->Position - 1); } + ReferenceType operator*() const + { + assert(this->Tree); + assert(this->Tree->UpPositions.size() == this->Tree->Data.size()); + assert(this->Position <= this->Tree->Data.size()); + assert(this->Position > 0); + return this->Tree->GetReference(this->Position - 1); + } + + ReferenceType operator*() + { + assert(this->Tree); + assert(this->Tree->UpPositions.size() == this->Tree->Data.size()); + assert(this->Position <= this->Tree->Data.size()); + assert(this->Position > 0); + return this->Tree->GetReference(this->Position - 1); + } + bool operator==(iterator other) const { assert(this->Tree);