main.cpp 802 Bytes
Newer Older
1
#include "parser.h"
2
3
#include "node.h"
#include "exceptions.h"
Jesse Beder's avatar
Jesse Beder committed
4
#include <fstream>
5
#include <iostream>
Jesse Beder's avatar
Jesse Beder committed
6
7
8

int main()
{
Jesse Beder's avatar
Jesse Beder committed
9
	std::ifstream fin("test.yaml");
10

11
12
13
14
15
16
	try {
		YAML::Parser parser(fin);
		if(!parser)
			return 0;

		YAML::Document doc;
17
		parser.GetNextDocument(doc);
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34

		const YAML::Node& root = doc.GetRoot();
		for(YAML::Node::Iterator it=root.begin();it!=root.end();++it) {
			std::string name;
			(*it)["name"] >> name;
			std::cout << "Name: " << name << std::endl;

			int age;
			(*it)["age"] >> age;
			std::cout << "Age: " << age << std::endl;

			std::string school;
			(*it)["school"] >> school;
			std::cout << "School: " << school << std::endl;
		}
	} catch(YAML::Exception& e) {
		std::cout << "Error parsing the yaml!\n";
35
	}
36

37
	getchar();
Jesse Beder's avatar
Jesse Beder committed
38
39
40

	return 0;
}