aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/ast/yql_expr_types.h
blob: bb628af2725be9f0aff7aadbcc00178d069773c6 (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
#pragma once
#include <library/cpp/deprecated/enum_codegen/enum_codegen.h>
#include <util/stream/output.h>

namespace NYql {

#define YQL_TYPE_ANN_KIND_MAP(xx) \
    xx(Unit, 1) \
    xx(Tuple, 2) \
    xx(Struct, 3) \
    xx(Item, 4) \
    xx(List, 5) \
    xx(Data, 6) \
    xx(World, 7) \
    xx(Optional, 8) \
    xx(Type, 9) \
    xx(Dict, 10) \
    xx(Void, 11) \
    xx(Callable, 12) \
    xx(Generic, 13) \
    xx(Resource, 14) \
    xx(Tagged, 15) \
    xx(Error, 16) \
    xx(Variant, 17) \
    xx(Stream, 18) \
    xx(Null, 19) \
    xx(Flow, 20) \
    xx(EmptyList, 21) \
    xx(EmptyDict, 22) \
    xx(Multi, 23) \
    xx(Pg, 24) \
    xx(Block, 25) \
    xx(Scalar, 26)

enum class ETypeAnnotationKind : ui64 {
    YQL_TYPE_ANN_KIND_MAP(ENUM_VALUE_GEN)
    LastType
};

}

template<>
void Out<NYql::ETypeAnnotationKind>(class IOutputStream &o, NYql::ETypeAnnotationKind x);