aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/yson_pull/detail/symbols.h
blob: be49f806950651519abff91016a2cc2bea63d89b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#pragma once 
 
#include <util/generic/strbuf.h> 
#include <util/system/types.h>
 
namespace NYsonPull {
    namespace NDetail {
        namespace NSymbol {
#define SYM(name, value) constexpr ui8 name = value
 
            //! Indicates the beginning of a list.
            SYM(begin_list, '[');
            //! Indicates the end of a list.
            SYM(end_list, ']');
 
            //! Indicates the beginning of a map.
            SYM(begin_map, '{');
            //! Indicates the end of a map.
            SYM(end_map, '}');
 
            //! Indicates the beginning of an attribute map.
            SYM(begin_attributes, '<');
            //! Indicates the end of an attribute map.
            SYM(end_attributes, '>');
 
            //! Separates items in lists and pairs in maps or attribute maps.
            SYM(item_separator, ';');
            //! Separates keys from values in maps and attribute maps.
            SYM(key_value_separator, '=');
 
            //! Indicates an entity.
            SYM(entity, '#');
            //! Indicates end of stream.
            SYM(eof, '\0');
 
            //! Marks the beginning of a binary string literal.
            SYM(string_marker, '\x01');
            //! Marks the beginning of a binary int64 literal.
            SYM(int64_marker, '\x02');
            //! Marks the beginning of a binary uint64 literal.
            SYM(uint64_marker, '\x06');
            //! Marks the beginning of a binary double literal.
            SYM(double_marker, '\x03');
            //! Marks a binary `false' boolean value.
            SYM(false_marker, '\x04');
            //! Marks a binary `true' boolean value.
            SYM(true_marker, '\x05');
 
            //! Text string quote symbol
            SYM(quote, '"');
 
#undef SYM 
        }
    }
}