exceptions.h 1.3 KB
Newer Older
beder's avatar
beder committed
1
2
3
4
5
6
7
#pragma once

#include <exception>

namespace YAML
{
	class Exception: public std::exception {};
8
	class ScannerException: public Exception {};
beder's avatar
beder committed
9

10
11
12
13
14
15
16
17
18
19
20
21
22
23
	class UnknownToken: public ScannerException {};
	class IllegalBlockEntry: public ScannerException {};
	class IllegalMapKey: public ScannerException {};
	class IllegalMapValue: public ScannerException {};
	class IllegalScalar: public ScannerException {};
	class IllegalTabInIndentation: public ScannerException {};
	class IllegalFlowEnd: public ScannerException {};
	class IllegalDocIndicator: public ScannerException {};
	class IllegalEOF: public ScannerException {};
	class RequiredSimpleKeyNotFound: public ScannerException {};
	class ZeroIndentationInBlockScalar: public ScannerException {};
	class UnexpectedCharacterInBlockScalar: public ScannerException {};
	class AnchorNotFound: public ScannerException {};
	class IllegalCharacterInAnchor: public ScannerException {};
beder's avatar
beder committed
24

25
	class UnknownEscapeSequence: public ScannerException {
beder's avatar
beder committed
26
27
28
29
	public:
		UnknownEscapeSequence(char ch_): ch(ch_) {}
		char ch;
	};
30
	class NonHexNumber: public ScannerException {
beder's avatar
beder committed
31
32
33
34
	public:
		NonHexNumber(char ch_): ch(ch_) {}
		char ch;
	};
35
	class InvalidUnicode: public ScannerException {
beder's avatar
beder committed
36
37
38
39
	public:
		InvalidUnicode(unsigned value_): value(value_) {}
		unsigned value;
	};
beder's avatar
beder committed
40
}