mirror of https://gitee.com/bigwinds/arangodb
micro optimizations
This commit is contained in:
parent
3c9c826210
commit
c2671d7ba3
|
@ -35,7 +35,7 @@ class AqlItemBlock;
|
|||
|
||||
class ExecutionEngine;
|
||||
|
||||
class SingletonBlock : public ExecutionBlock {
|
||||
class SingletonBlock final : public ExecutionBlock {
|
||||
public:
|
||||
SingletonBlock(ExecutionEngine* engine, SingletonNode const* ep)
|
||||
: ExecutionBlock(engine, ep), _inputRegisterValues(nullptr), _whitelistBuilt(false) {}
|
||||
|
@ -75,7 +75,7 @@ class SingletonBlock : public ExecutionBlock {
|
|||
bool _whitelistBuilt;
|
||||
};
|
||||
|
||||
class FilterBlock : public ExecutionBlock {
|
||||
class FilterBlock final : public ExecutionBlock {
|
||||
public:
|
||||
FilterBlock(ExecutionEngine*, FilterNode const*);
|
||||
|
||||
|
@ -112,7 +112,7 @@ class FilterBlock : public ExecutionBlock {
|
|||
BlockCollector _collector;
|
||||
};
|
||||
|
||||
class LimitBlock : public ExecutionBlock {
|
||||
class LimitBlock final : public ExecutionBlock {
|
||||
public:
|
||||
LimitBlock(ExecutionEngine* engine, LimitNode const* ep)
|
||||
: ExecutionBlock(engine, ep),
|
||||
|
@ -145,7 +145,7 @@ class LimitBlock : public ExecutionBlock {
|
|||
bool const _fullCount;
|
||||
};
|
||||
|
||||
class ReturnBlock : public ExecutionBlock {
|
||||
class ReturnBlock final : public ExecutionBlock {
|
||||
public:
|
||||
ReturnBlock(ExecutionEngine* engine, ReturnNode const* ep)
|
||||
: ExecutionBlock(engine, ep), _returnInheritedResults(false) {}
|
||||
|
@ -168,7 +168,7 @@ class ReturnBlock : public ExecutionBlock {
|
|||
bool _returnInheritedResults;
|
||||
};
|
||||
|
||||
class NoResultsBlock : public ExecutionBlock {
|
||||
class NoResultsBlock final : public ExecutionBlock {
|
||||
public:
|
||||
NoResultsBlock(ExecutionEngine* engine, NoResultsNode const* ep)
|
||||
: ExecutionBlock(engine, ep) {}
|
||||
|
|
|
@ -34,7 +34,7 @@ class AqlItemBlock;
|
|||
|
||||
class ExecutionEngine;
|
||||
|
||||
class CalculationBlock : public ExecutionBlock {
|
||||
class CalculationBlock final : public ExecutionBlock {
|
||||
public:
|
||||
CalculationBlock(ExecutionEngine*, CalculationNode const*);
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@ class ExecutionEngine;
|
|||
|
||||
typedef std::vector<Aggregator*> AggregateValuesType;
|
||||
|
||||
class SortedCollectBlock : public ExecutionBlock {
|
||||
class SortedCollectBlock final : public ExecutionBlock {
|
||||
private:
|
||||
typedef std::vector<Aggregator*> AggregateValuesType;
|
||||
|
||||
|
|
|
@ -41,7 +41,7 @@ struct Collection;
|
|||
class CollectionScanner;
|
||||
class ExecutionEngine;
|
||||
|
||||
class EnumerateCollectionBlock : public ExecutionBlock {
|
||||
class EnumerateCollectionBlock final : public ExecutionBlock {
|
||||
public:
|
||||
EnumerateCollectionBlock(ExecutionEngine* engine,
|
||||
EnumerateCollectionNode const* ep);
|
||||
|
|
|
@ -1139,7 +1139,7 @@ void ExecutionNode::RegisterPlan::after(ExecutionNode* en) {
|
|||
regsToClear.emplace(r);
|
||||
}
|
||||
}
|
||||
en->setRegsToClear(regsToClear);
|
||||
en->setRegsToClear(std::move(regsToClear));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -586,8 +586,8 @@ class ExecutionNode {
|
|||
void toVelocyPackHelperGeneric(arangodb::velocypack::Builder&, bool) const;
|
||||
|
||||
/// @brief set regs to be deleted
|
||||
void setRegsToClear(std::unordered_set<RegisterId> const& toClear) {
|
||||
_regsToClear = toClear;
|
||||
void setRegsToClear(std::unordered_set<RegisterId>&& toClear) {
|
||||
_regsToClear = std::move(toClear);
|
||||
}
|
||||
|
||||
protected:
|
||||
|
|
|
@ -59,7 +59,7 @@ struct NonConstExpression {
|
|||
~NonConstExpression() { delete expression; }
|
||||
};
|
||||
|
||||
class IndexBlock : public ExecutionBlock {
|
||||
class IndexBlock final : public ExecutionBlock {
|
||||
public:
|
||||
IndexBlock(ExecutionEngine* engine, IndexNode const* ep);
|
||||
|
||||
|
|
|
@ -37,7 +37,7 @@ class AqlItemBlock;
|
|||
|
||||
class ExecutionEngine;
|
||||
|
||||
class SortBlock : public ExecutionBlock {
|
||||
class SortBlock final : public ExecutionBlock {
|
||||
public:
|
||||
SortBlock(ExecutionEngine*, SortNode const*);
|
||||
|
||||
|
|
|
@ -37,7 +37,7 @@ class ManagedDocumentResult;
|
|||
|
||||
namespace aql {
|
||||
|
||||
class TraversalBlock : public ExecutionBlock {
|
||||
class TraversalBlock final : public ExecutionBlock {
|
||||
public:
|
||||
TraversalBlock(ExecutionEngine* engine, TraversalNode const* ep);
|
||||
|
||||
|
|
Loading…
Reference in New Issue