#pragma once #include #include namespace DB::GatherUtils { template struct NumericValueSource; struct GenericValueSource; template struct NullableValueSource; template struct ConstSource; using NumericValueSources = TypeListMap; using BasicValueSources = TypeListAppend; using NullableValueSources = TypeListMap; using BasicAndNullableValueSources = TypeListConcat; using ConstValueSources = TypeListMap; using TypeListValueSources = TypeListConcat; class ValueSourceVisitor : public TypeListChangeRoot { protected: ~ValueSourceVisitor() = default; }; template class ValueSourceVisitorImpl : public VisitorImpl { protected: ~ValueSourceVisitorImpl() = default; }; }