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 438 of file expressions.hpp.
◆ operation() [1/2]
cudf::ast::operation::operation |
( |
ast_operator |
op, |
|
|
expression const & |
input |
|
) |
| |
Construct a new unary operation object.
- Parameters
-
op | Operator |
input | Input expression (operand) |
◆ operation() [2/2]
cudf::ast::operation::operation |
( |
ast_operator |
op, |
|
|
expression const & |
left, |
|
|
expression const & |
right |
|
) |
| |
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 476 of file expressions.hpp.
◆ get_operator()
ast_operator cudf::ast::operation::get_operator |
( |
| ) |
const |
|
inline |
◆ may_evaluate_null()
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 489 of file expressions.hpp.
The documentation for this class was generated from the following file: