ClickHouse/dbms/src/Interpreters/OptimizeIfChains.h

25 lines
334 B
C++
Raw Normal View History

2019-12-23 15:08:18 +00:00
#pragma once
#include <Interpreters/Aliases.h>
namespace DB
{
2019-12-27 18:52:18 +00:00
/// It converts if-chain to multiIf.
class OptimizeIfChainsVisitor
{
public:
OptimizeIfChainsVisitor(Aliases & aliases_)
: aliases(aliases_)
{}
2019-12-23 15:08:18 +00:00
2019-12-27 18:52:18 +00:00
void visit(ASTPtr & ast);
2019-12-23 15:08:18 +00:00
2019-12-27 18:52:18 +00:00
ASTs IfChain(ASTPtr & child);
2019-12-23 15:08:18 +00:00
2019-12-27 18:52:18 +00:00
private:
Aliases & aliases;
};
2019-12-23 15:08:18 +00:00
2019-12-27 18:52:18 +00:00
}