summaryrefslogtreecommitdiffstats
path: root/yql/essentials/sql/v1/ide/completion/analysis/global/parser.h
blob: cd1ff9abfee8d124a86294bf99ce104135fa4053 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#pragma once

#include "input.h"

#include <util/generic/ptr.h>

namespace NSQLComplete {

class IParser {
public:
    using TPtr = THolder<IParser>;

    virtual ~IParser() = default;
    virtual TParsedInput Parse(TCompletionInput input Y_LIFETIME_BOUND) Y_LIFETIME_BOUND = 0;
};

IParser::TPtr MakeParser(bool isAnsiLexer);

} // namespace NSQLComplete