blob: 8435cc518e32e8b1a34ccde948259f75f82b3c4b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
#include "aggregationresult.h"
#include <vespa/searchlib/expression/singleresultnode.h>
namespace search::aggregation {
class MaxAggregationResult : public AggregationResult
{
public:
using SingleResultNode = expression::SingleResultNode;
DECLARE_AGGREGATIONRESULT(MaxAggregationResult);
MaxAggregationResult();
MaxAggregationResult(const SingleResultNode & max);
~MaxAggregationResult();
void visitMembers(vespalib::ObjectVisitor &visitor) const override;
const SingleResultNode & getMax() const { return *_max; }
private:
const ResultNode & onGetRank() const override { return getMax(); }
void onPrepare(const ResultNode & result, bool useForInit) override;
SingleResultNode::CP _max;
};
}
|