From a3a8b2bbf77c094359d8a1bc5b14dc6d26671cb8 Mon Sep 17 00:00:00 2001 From: Ivan Lezhankin Date: Mon, 11 Mar 2019 17:01:45 +0300 Subject: [PATCH] Include IAST_fwd.h for using ASTPtr --- dbms/src/Compression/CompressionFactory.h | 19 +++++++------ dbms/src/DataTypes/DataTypeFactory.h | 14 +++++----- dbms/src/Databases/IDatabase.h | 18 ++++++------- dbms/src/Interpreters/Aliases.h | 8 +++--- dbms/src/Interpreters/Context.h | 27 +++++++++---------- .../Interpreters/DatabaseAndTableWithAlias.h | 10 +++---- dbms/src/Interpreters/ExpressionAnalyzer.h | 7 +++-- dbms/src/Interpreters/InterpreterAlterQuery.h | 3 +-- .../Interpreters/InterpreterDescribeQuery.h | 3 +-- dbms/src/Interpreters/InterpreterDropQuery.h | 6 ++--- .../src/Interpreters/InterpreterExistsQuery.h | 3 +-- .../Interpreters/InterpreterExplainQuery.h | 5 +--- dbms/src/Interpreters/InterpreterFactory.h | 3 +-- .../Interpreters/InterpreterKillQueryQuery.h | 4 +-- .../Interpreters/InterpreterOptimizeQuery.h | 3 +-- .../src/Interpreters/InterpreterRenameQuery.h | 3 +-- .../Interpreters/InterpreterSelectQuery.cpp | 6 +++-- dbms/src/Interpreters/InterpreterSetQuery.h | 3 +-- .../Interpreters/InterpreterShowCreateQuery.h | 3 +-- .../InterpreterShowProcesslistQuery.h | 3 +-- .../Interpreters/InterpreterShowTablesQuery.h | 3 +-- .../src/Interpreters/InterpreterSystemQuery.h | 4 +-- dbms/src/Interpreters/InterpreterUseQuery.h | 3 +-- dbms/src/Storages/StorageMaterializedView.h | 5 +--- dbms/src/Storages/StorageView.h | 10 +++---- dbms/src/TableFunctions/ITableFunction.h | 5 ++-- 26 files changed, 76 insertions(+), 105 deletions(-) diff --git a/dbms/src/Compression/CompressionFactory.h b/dbms/src/Compression/CompressionFactory.h index db28a19201..b36bed1cf8 100644 --- a/dbms/src/Compression/CompressionFactory.h +++ b/dbms/src/Compression/CompressionFactory.h @@ -1,14 +1,17 @@ #pragma once -#include +#include +#include +#include +#include +#include + +#include + #include +#include #include #include -#include -#include -#include -#include -#include namespace DB { @@ -19,10 +22,6 @@ using CompressionCodecPtr = std::shared_ptr; using CodecNameWithLevel = std::pair>; -class IAST; - -using ASTPtr = std::shared_ptr; - /** Creates a codec object by name of compression algorithm family and parameters. */ class CompressionCodecFactory final : public ext::singleton diff --git a/dbms/src/DataTypes/DataTypeFactory.h b/dbms/src/DataTypes/DataTypeFactory.h index 95cda9002f..c6ef100bbb 100644 --- a/dbms/src/DataTypes/DataTypeFactory.h +++ b/dbms/src/DataTypes/DataTypeFactory.h @@ -1,12 +1,15 @@ #pragma once -#include -#include -#include -#include #include +#include +#include + #include +#include +#include +#include + namespace DB { @@ -17,9 +20,6 @@ using DataTypePtr = std::shared_ptr; class IDataTypeDomain; using DataTypeDomainPtr = std::unique_ptr; -class IAST; -using ASTPtr = std::shared_ptr; - /** Creates a data type by name of data type family and parameters. */ diff --git a/dbms/src/Databases/IDatabase.h b/dbms/src/Databases/IDatabase.h index e6b67a87c9..7c0d501fc6 100644 --- a/dbms/src/Databases/IDatabase.h +++ b/dbms/src/Databases/IDatabase.h @@ -1,16 +1,18 @@ #pragma once -#include #include +#include +#include +#include #include #include -#include -#include -#include #include -#include #include -#include +#include + +#include +#include +#include namespace DB @@ -21,9 +23,6 @@ class Context; class IStorage; using StoragePtr = std::shared_ptr; -class IAST; -using ASTPtr = std::shared_ptr; - struct Settings; @@ -157,4 +156,3 @@ using DatabasePtr = std::shared_ptr; using Databases = std::map; } - diff --git a/dbms/src/Interpreters/Aliases.h b/dbms/src/Interpreters/Aliases.h index 80976c7551..5215944222 100644 --- a/dbms/src/Interpreters/Aliases.h +++ b/dbms/src/Interpreters/Aliases.h @@ -1,15 +1,13 @@ #pragma once -#include - #include +#include + +#include namespace DB { -class IAST; -using ASTPtr = std::shared_ptr; - using Aliases = std::unordered_map; } diff --git a/dbms/src/Interpreters/Context.h b/dbms/src/Interpreters/Context.h index 8b4e66094f..4f90a50e34 100644 --- a/dbms/src/Interpreters/Context.h +++ b/dbms/src/Interpreters/Context.h @@ -1,23 +1,24 @@ #pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include #include #include #include #include #include -#include -#include #include - -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include namespace Poco @@ -68,8 +69,6 @@ class IStorage; class ITableFunction; using StoragePtr = std::shared_ptr; using Tables = std::map; -class IAST; -using ASTPtr = std::shared_ptr; class IBlockInputStream; class IBlockOutputStream; using BlockInputStreamPtr = std::shared_ptr; diff --git a/dbms/src/Interpreters/DatabaseAndTableWithAlias.h b/dbms/src/Interpreters/DatabaseAndTableWithAlias.h index 0f1cbe8bbc..22b03a5ed4 100644 --- a/dbms/src/Interpreters/DatabaseAndTableWithAlias.h +++ b/dbms/src/Interpreters/DatabaseAndTableWithAlias.h @@ -1,18 +1,16 @@ #pragma once +#include +#include +#include + #include #include -#include -#include - namespace DB { -class IAST; -using ASTPtr = std::shared_ptr; - class ASTSelectQuery; class ASTIdentifier; struct ASTTableExpression; diff --git a/dbms/src/Interpreters/ExpressionAnalyzer.h b/dbms/src/Interpreters/ExpressionAnalyzer.h index c7441efe4c..b9ec5c3ca7 100644 --- a/dbms/src/Interpreters/ExpressionAnalyzer.h +++ b/dbms/src/Interpreters/ExpressionAnalyzer.h @@ -1,9 +1,11 @@ #pragma once +#include #include #include -#include #include +#include + namespace DB { @@ -15,9 +17,6 @@ struct ExpressionActionsChain; class ExpressionActions; using ExpressionActionsPtr = std::shared_ptr; -class IAST; -using ASTPtr = std::shared_ptr; -using ASTs = std::vector; struct ASTTableJoin; class IBlockInputStream; diff --git a/dbms/src/Interpreters/InterpreterAlterQuery.h b/dbms/src/Interpreters/InterpreterAlterQuery.h index bd9f3a89d6..776409a225 100644 --- a/dbms/src/Interpreters/InterpreterAlterQuery.h +++ b/dbms/src/Interpreters/InterpreterAlterQuery.h @@ -1,14 +1,13 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; /** Allows you add or remove a column in the table. * It also allows you to manipulate the partitions of the MergeTree family tables. diff --git a/dbms/src/Interpreters/InterpreterDescribeQuery.h b/dbms/src/Interpreters/InterpreterDescribeQuery.h index fc0bea10f2..4fafe61f22 100644 --- a/dbms/src/Interpreters/InterpreterDescribeQuery.h +++ b/dbms/src/Interpreters/InterpreterDescribeQuery.h @@ -1,14 +1,13 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; /** Return names, types and other information about columns in specified table. diff --git a/dbms/src/Interpreters/InterpreterDropQuery.h b/dbms/src/Interpreters/InterpreterDropQuery.h index 2bea9f85c9..1493d262a2 100644 --- a/dbms/src/Interpreters/InterpreterDropQuery.h +++ b/dbms/src/Interpreters/InterpreterDropQuery.h @@ -1,16 +1,14 @@ #pragma once +#include #include #include -#include - +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; using DatabaseAndTable = std::pair; /** Allow to either drop table with all its data (DROP), diff --git a/dbms/src/Interpreters/InterpreterExistsQuery.h b/dbms/src/Interpreters/InterpreterExistsQuery.h index b2050b443d..1860e1d0aa 100644 --- a/dbms/src/Interpreters/InterpreterExistsQuery.h +++ b/dbms/src/Interpreters/InterpreterExistsQuery.h @@ -1,14 +1,13 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; /** Check that table exists. Return single row with single column "result" of type UInt8 and value 0 or 1. diff --git a/dbms/src/Interpreters/InterpreterExplainQuery.h b/dbms/src/Interpreters/InterpreterExplainQuery.h index 4db796ad01..0d3b183857 100644 --- a/dbms/src/Interpreters/InterpreterExplainQuery.h +++ b/dbms/src/Interpreters/InterpreterExplainQuery.h @@ -2,15 +2,12 @@ #include #include +#include namespace DB { -class IAST; -using ASTPtr = std::shared_ptr; - - /// Returns single row with explain results class InterpreterExplainQuery : public IInterpreter { diff --git a/dbms/src/Interpreters/InterpreterFactory.h b/dbms/src/Interpreters/InterpreterFactory.h index 25bad6659d..1f065bbf69 100644 --- a/dbms/src/Interpreters/InterpreterFactory.h +++ b/dbms/src/Interpreters/InterpreterFactory.h @@ -2,14 +2,13 @@ #include #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; class InterpreterFactory diff --git a/dbms/src/Interpreters/InterpreterKillQueryQuery.h b/dbms/src/Interpreters/InterpreterKillQueryQuery.h index 9294e45eab..fab4b30486 100644 --- a/dbms/src/Interpreters/InterpreterKillQueryQuery.h +++ b/dbms/src/Interpreters/InterpreterKillQueryQuery.h @@ -1,14 +1,13 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; class InterpreterKillQueryQuery : public IInterpreter @@ -28,4 +27,3 @@ private: } - diff --git a/dbms/src/Interpreters/InterpreterOptimizeQuery.h b/dbms/src/Interpreters/InterpreterOptimizeQuery.h index 03c369b0e4..251d8ea02f 100644 --- a/dbms/src/Interpreters/InterpreterOptimizeQuery.h +++ b/dbms/src/Interpreters/InterpreterOptimizeQuery.h @@ -1,14 +1,13 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; /** Just call method "optimize" for table. diff --git a/dbms/src/Interpreters/InterpreterRenameQuery.h b/dbms/src/Interpreters/InterpreterRenameQuery.h index e9a36277ef..0433c63846 100644 --- a/dbms/src/Interpreters/InterpreterRenameQuery.h +++ b/dbms/src/Interpreters/InterpreterRenameQuery.h @@ -1,14 +1,13 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; /** Rename one table diff --git a/dbms/src/Interpreters/InterpreterSelectQuery.cpp b/dbms/src/Interpreters/InterpreterSelectQuery.cpp index 44b8f85a93..70c2561988 100644 --- a/dbms/src/Interpreters/InterpreterSelectQuery.cpp +++ b/dbms/src/Interpreters/InterpreterSelectQuery.cpp @@ -1078,7 +1078,8 @@ void InterpreterSelectQuery::executeFetchColumns( void InterpreterSelectQuery::executeWhere(Pipeline & pipeline, const ExpressionActionsPtr & expression, bool remove_fiter) { - pipeline.transform([&](auto & stream) { + pipeline.transform([&](auto & stream) + { stream = std::make_shared( stream, expression, query_ptr->as()->where_expression->getColumnName(), remove_fiter); }); @@ -1206,7 +1207,8 @@ void InterpreterSelectQuery::executeMergeAggregated(Pipeline & pipeline, bool ov void InterpreterSelectQuery::executeHaving(Pipeline & pipeline, const ExpressionActionsPtr & expression) { - pipeline.transform([&](auto & stream) { + pipeline.transform([&](auto & stream) + { stream = std::make_shared( stream, expression, query_ptr->as()->having_expression->getColumnName()); }); diff --git a/dbms/src/Interpreters/InterpreterSetQuery.h b/dbms/src/Interpreters/InterpreterSetQuery.h index 7dbd444f6f..434765cf7d 100644 --- a/dbms/src/Interpreters/InterpreterSetQuery.h +++ b/dbms/src/Interpreters/InterpreterSetQuery.h @@ -1,15 +1,14 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; class ASTSetQuery; -using ASTPtr = std::shared_ptr; /** Change one or several settings for the session or just for the current context. diff --git a/dbms/src/Interpreters/InterpreterShowCreateQuery.h b/dbms/src/Interpreters/InterpreterShowCreateQuery.h index 5e8672c176..5ac98509b2 100644 --- a/dbms/src/Interpreters/InterpreterShowCreateQuery.h +++ b/dbms/src/Interpreters/InterpreterShowCreateQuery.h @@ -1,14 +1,13 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; /** Return single row with single column "statement" of type String with text of query to CREATE specified table. diff --git a/dbms/src/Interpreters/InterpreterShowProcesslistQuery.h b/dbms/src/Interpreters/InterpreterShowProcesslistQuery.h index ee180e7669..6b87fd7edc 100644 --- a/dbms/src/Interpreters/InterpreterShowProcesslistQuery.h +++ b/dbms/src/Interpreters/InterpreterShowProcesslistQuery.h @@ -1,14 +1,13 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; /** Return list of currently executing queries. diff --git a/dbms/src/Interpreters/InterpreterShowTablesQuery.h b/dbms/src/Interpreters/InterpreterShowTablesQuery.h index 3f661da3e2..fc5cb2b750 100644 --- a/dbms/src/Interpreters/InterpreterShowTablesQuery.h +++ b/dbms/src/Interpreters/InterpreterShowTablesQuery.h @@ -1,14 +1,13 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; /** Return a list of tables or databases meets specified conditions. diff --git a/dbms/src/Interpreters/InterpreterSystemQuery.h b/dbms/src/Interpreters/InterpreterSystemQuery.h index fb92e79976..65aaf78941 100644 --- a/dbms/src/Interpreters/InterpreterSystemQuery.h +++ b/dbms/src/Interpreters/InterpreterSystemQuery.h @@ -1,15 +1,15 @@ #pragma once + #include +#include namespace DB { class Context; -class IAST; class ASTSystemQuery; class IStorage; -using ASTPtr = std::shared_ptr; using StoragePtr = std::shared_ptr; diff --git a/dbms/src/Interpreters/InterpreterUseQuery.h b/dbms/src/Interpreters/InterpreterUseQuery.h index 988ccb741f..ae409117af 100644 --- a/dbms/src/Interpreters/InterpreterUseQuery.h +++ b/dbms/src/Interpreters/InterpreterUseQuery.h @@ -1,14 +1,13 @@ #pragma once #include +#include namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; /** Change default database for session. diff --git a/dbms/src/Storages/StorageMaterializedView.h b/dbms/src/Storages/StorageMaterializedView.h index 8c2657b484..665f6243a3 100644 --- a/dbms/src/Storages/StorageMaterializedView.h +++ b/dbms/src/Storages/StorageMaterializedView.h @@ -2,16 +2,13 @@ #include +#include #include namespace DB { -class IAST; // XXX: should include full class - for proper use inside inline methods -using ASTPtr = std::shared_ptr; - - class StorageMaterializedView : public ext::shared_ptr_helper, public IStorage { public: diff --git a/dbms/src/Storages/StorageView.h b/dbms/src/Storages/StorageView.h index fed6664b8e..afd9b5ce32 100644 --- a/dbms/src/Storages/StorageView.h +++ b/dbms/src/Storages/StorageView.h @@ -1,17 +1,15 @@ #pragma once -#include -#include #include +#include +#include + +#include namespace DB { -class IAST; -using ASTPtr = std::shared_ptr; - - class StorageView : public ext::shared_ptr_helper, public IStorage { public: diff --git a/dbms/src/TableFunctions/ITableFunction.h b/dbms/src/TableFunctions/ITableFunction.h index ddf900fa65..39ef7857a3 100644 --- a/dbms/src/TableFunctions/ITableFunction.h +++ b/dbms/src/TableFunctions/ITableFunction.h @@ -1,14 +1,15 @@ #pragma once +#include + #include #include + namespace DB { class Context; -class IAST; -using ASTPtr = std::shared_ptr; class IStorage; using StoragePtr = std::shared_ptr; -- GitLab