Switched the Iterator implementation to a dedicated helper class (to hide the specific implementation, since it's pretty messy and may change).

This commit is contained in:
Jesse Beder
2008-07-21 02:54:39 +00:00
parent 09d7ab365f
commit cc87c83b01
10 changed files with 143 additions and 68 deletions

29
include/iterator.h Normal file
View File

@@ -0,0 +1,29 @@
#pragma once
namespace YAML
{
class Node;
struct IterPriv;
class Iterator
{
public:
Iterator();
Iterator(IterPriv *pData);
Iterator(const Iterator& rhs);
~Iterator();
friend bool operator == (const Iterator& it, const Iterator& jt);
friend bool operator != (const Iterator& it, const Iterator& jt);
Iterator& operator = (const Iterator& rhs);
Iterator& operator ++ ();
Iterator operator ++ (int);
const Node& operator * ();
const Node *operator -> ();
const Node& first();
const Node& second();
private:
IterPriv *m_pData;
};
}