#pragma once #include "content.h" #include namespace YAML { class Node; class Sequence: public Content { public: Sequence(); virtual ~Sequence(); void Clear(); virtual bool GetBegin(std::vector ::const_iterator& it) const; virtual bool GetEnd(std::vector ::const_iterator& it) const; virtual Node *GetNode(unsigned i) const; virtual unsigned GetSize() const; virtual void Parse(Scanner *pScanner, const ParserState& state); virtual void Write(std::ostream& out, int indent); private: void ParseBlock(Scanner *pScanner, const ParserState& state); void ParseImplicit(Scanner *pScanner, const ParserState& state); void ParseFlow(Scanner *pScanner, const ParserState& state); protected: std::vector m_data; }; }