1#pragma once
2
3#include <Parsers/IParserBase.h>
4#include <Parsers/IAST_fwd.h>
5#include <Parsers/CommonParsers.h>
6#include <Parsers/ASTDictionaryAttributeDeclaration.h>
7#include <Parsers/ASTIdentifier.h>
8
9
10namespace DB
11{
12/// Parser for dictionary attribute declaration, similar with parser for table
13/// column, but attributes has less parameters. Produces
14/// ASTDictionaryAttributeDeclaration.
15class ParserDictionaryAttributeDeclaration : public IParserBase
16{
17protected:
18 const char * getName() const override { return "attribute declaration"; }
19
20 bool parseImpl(Pos & pos, ASTPtr & node, Expected & expected) override;
21};
22
23
24/// Creates ASTExpressionList consists of dictionary attributes declaration.
25class ParserDictionaryAttributeDeclarationList : public IParserBase
26{
27protected:
28 const char * getName() const { return "attribute declaration list"; }
29 bool parseImpl(Pos & pos, ASTPtr & node, Expected & expected);
30};
31
32}
33