2008-06-26 02:45:08 +04:00
|
|
|
#include "node.h"
|
2008-06-26 03:00:18 +04:00
|
|
|
#include "content.h"
|
2008-06-26 10:49:50 +04:00
|
|
|
#include "parser.h"
|
|
|
|
|
#include "scalar.h"
|
|
|
|
|
#include "sequence.h"
|
2008-06-26 02:45:08 +04:00
|
|
|
|
|
|
|
|
namespace YAML
|
|
|
|
|
{
|
2008-06-26 03:00:18 +04:00
|
|
|
Node::Node(): m_pContent(0)
|
2008-06-26 02:45:08 +04:00
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Node::~Node()
|
2008-06-26 03:00:18 +04:00
|
|
|
{
|
|
|
|
|
Clear();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void Node::Clear()
|
|
|
|
|
{
|
|
|
|
|
delete m_pContent;
|
|
|
|
|
m_pContent = 0;
|
|
|
|
|
}
|
|
|
|
|
|
2008-06-26 10:49:50 +04:00
|
|
|
void Node::Read(Parser *pParser, const std::string& token)
|
2008-06-26 02:45:08 +04:00
|
|
|
{
|
2008-06-26 10:49:50 +04:00
|
|
|
Clear();
|
|
|
|
|
|
|
|
|
|
if(token == std::string("") + SeqToken) {
|
|
|
|
|
m_pContent = new Sequence(pParser);
|
|
|
|
|
} else {
|
|
|
|
|
m_pContent = new Scalar(token);
|
|
|
|
|
}
|
2008-06-26 02:45:08 +04:00
|
|
|
}
|
|
|
|
|
}
|