An operation expression holds an operator and zero or more operands.
More...
#include <expressions.hpp>
|
| operation (ast_operator op, expression const &input) |
| Construct a new unary operation object. More...
|
|
| operation (ast_operator op, expression const &left, expression const &right) |
| Construct a new binary operation object. More...
|
|
| operation (ast_operator op, expression &&input)=delete |
|
| operation (ast_operator op, expression &&left, expression &&right)=delete |
|
| operation (ast_operator op, expression &&left, expression const &right)=delete |
|
| operation (ast_operator op, expression const &left, expression &&right)=delete |
|
ast_operator | get_operator () const |
| Get the operator. More...
|
|
std::vector< std::reference_wrapper< expression const > > | get_operands () const |
| Get the operands. More...
|
|
cudf::size_type | accept (detail::expression_parser &visitor) const override |
| Accepts a visitor class. More...
|
|
std::reference_wrapper< expression const > | accept (detail::expression_transformer &visitor) const override |
| Accepts a visitor class. More...
|
|
bool | may_evaluate_null (table_view const &left, table_view const &right, rmm::cuda_stream_view stream) const override |
| Returns true if the expression may evaluate to null. More...
|
|
bool | may_evaluate_null (table_view const &left, rmm::cuda_stream_view stream) const |
| Returns true if the expression may evaluate to null. More...
|
|
An operation expression holds an operator and zero or more operands.
Definition at line 443 of file expressions.hpp.
◆ operation() [1/2]
Construct a new unary operation object.
- Parameters
-
op | Operator |
input | Input expression (operand) |
◆ operation() [2/2]
Construct a new binary operation object.
- Parameters
-
op | Operator |
left | Left input expression (left operand) |
right | Right input expression (right operand) |
◆ accept() [1/2]
cudf::size_type cudf::ast::operation::accept |
( |
detail::expression_parser & |
visitor | ) |
const |
|
overridevirtual |
Accepts a visitor class.
- Parameters
-
visitor | The expression_parser parsing this expression tree |
- Returns
- Index of device data reference for this instance
Implements cudf::ast::expression.
◆ accept() [2/2]
std::reference_wrapper<expression const> cudf::ast::operation::accept |
( |
detail::expression_transformer & |
visitor | ) |
const |
|
overridevirtual |
Accepts a visitor class.
- Parameters
-
visitor | The expression_parser parsing this expression tree |
- Returns
- Index of device data reference for this instance
Implements cudf::ast::expression.
◆ get_operands()
std::vector<std::reference_wrapper<expression const> > cudf::ast::operation::get_operands |
( |
| ) |
const |
|
inline |
Get the operands.
- Returns
- Vector of operands
Definition at line 481 of file expressions.hpp.
◆ get_operator()
◆ may_evaluate_null()
bool cudf::ast::operation::may_evaluate_null |
( |
table_view const & |
left, |
|
|
table_view const & |
right, |
|
|
rmm::cuda_stream_view |
stream |
|
) |
| const |
|
inlineoverridevirtual |
Returns true if the expression may evaluate to null.
- Parameters
-
left | The left operand of the expression |
right | The right operand of the expression |
stream | CUDA stream used for device memory operations and kernel launches |
- Returns
true
if the expression may evaluate to null, otherwise false
Implements cudf::ast::expression.
Definition at line 494 of file expressions.hpp.
The documentation for this class was generated from the following file: