node.cpp 501 Bytes
Newer Older
Jesse Beder's avatar
Jesse Beder committed
1
#include "node.h"
2
#include "content.h"
3
4
5
#include "parser.h"
#include "scalar.h"
#include "sequence.h"
Jesse Beder's avatar
Jesse Beder committed
6
7
8

namespace YAML
{
9
	Node::Node(): m_pContent(0)
Jesse Beder's avatar
Jesse Beder committed
10
11
12
13
	{
	}

	Node::~Node()
14
15
16
17
18
19
20
21
22
23
	{
		Clear();
	}

	void Node::Clear()
	{
		delete m_pContent;
		m_pContent = 0;
	}

24
	void Node::Read(Parser *pParser, const std::string& token)
Jesse Beder's avatar
Jesse Beder committed
25
	{
26
27
28
29
30
31
32
		Clear();

		if(token == std::string("") + SeqToken) {
			m_pContent = new Sequence(pParser);
		} else {
			m_pContent = new Scalar(token);
		}
Jesse Beder's avatar
Jesse Beder committed
33
34
	}
}