OmniSciDB
a5dc49c757
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
SQLOperatorDetector.cpp
Go to the documentation of this file.
1
/*
2
* Copyright 2022 HEAVY.AI, Inc.
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#include "
SQLOperatorDetector.h
"
18
19
bool
SQLOperatorDetector::detect
(
RelAlgNode
const
* rel_alg_node,
SQLOps
target_op) {
20
SQLOperatorDetector
visitor;
21
visitor.
target_op_
= target_op;
22
visitor.
visit
(rel_alg_node);
23
return
visitor.
has_target_op_
;
24
}
25
26
void
SQLOperatorDetector::visit
(
RexOperator
const
* op) {
27
if
(op->
getOperator
() ==
target_op_
) {
28
has_target_op_
=
true
;
29
}
30
RelRexDagVisitor::visit
(op);
31
}
RelRexDagVisitor::visit
virtual void visit(RelAlgNode const *)
Definition:
RelRexDagVisitor.cpp:68
SQLOps
SQLOps
Definition:
sqldefs.h:31
RexOperator
Definition:
RelAlgDag.h:336
RexOperator::getOperator
SQLOps getOperator() const
Definition:
RelAlgDag.h:376
SQLOperatorDetector::target_op_
SQLOps target_op_
Definition:
SQLOperatorDetector.h:29
SQLOperatorDetector.h
RelAlgNode
Definition:
RelAlgDag.h:828
SQLOperatorDetector::has_target_op_
bool has_target_op_
Definition:
SQLOperatorDetector.h:28
SQLOperatorDetector::detect
static bool detect(RelAlgNode const *rel_alg_node, SQLOps target_op)
Definition:
SQLOperatorDetector.cpp:19
SQLOperatorDetector
Definition:
SQLOperatorDetector.h:19
SQLOperatorDetector::visit
void visit(RexOperator const *op) override
Definition:
SQLOperatorDetector.cpp:26
QueryEngine
Visitors
SQLOperatorDetector.cpp
Generated on Tue Aug 27 2024 00:12:44 for OmniSciDB by
1.8.5