2020-03-19 23:48:53 +00:00
|
|
|
#ifndef __clang_analyzer__ // It's too hard to analyze.
|
|
|
|
|
2019-12-15 06:34:43 +00:00
|
|
|
#include "GatherUtils.h"
|
2019-06-21 15:31:37 +00:00
|
|
|
#include "Selectors.h"
|
|
|
|
#include "Algorithms.h"
|
2017-10-12 19:58:39 +00:00
|
|
|
|
2018-01-10 15:45:05 +00:00
|
|
|
namespace DB::GatherUtils
|
2017-10-12 19:58:39 +00:00
|
|
|
{
|
|
|
|
struct SliceDynamicOffsetBoundedSelectArraySource : public ArraySinkSourceSelector<SliceDynamicOffsetBoundedSelectArraySource>
|
|
|
|
{
|
|
|
|
template <typename Source, typename Sink>
|
2017-12-16 01:21:59 +00:00
|
|
|
static void selectSourceSink(Source && source, Sink && sink, const IColumn & offset_column, const IColumn & length_column)
|
2017-10-12 19:58:39 +00:00
|
|
|
{
|
|
|
|
sliceDynamicOffsetBounded(source, sink, offset_column, length_column);
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
2017-12-16 01:21:59 +00:00
|
|
|
void sliceDynamicOffsetBounded(IArraySource & src, IArraySink & sink, const IColumn & offset_column, const IColumn & length_column)
|
2017-10-12 19:58:39 +00:00
|
|
|
{
|
|
|
|
SliceDynamicOffsetBoundedSelectArraySource::select(src, sink, offset_column, length_column);
|
|
|
|
}
|
|
|
|
}
|
2020-03-19 23:48:53 +00:00
|
|
|
|
|
|
|
#endif
|