Apache GraphAr C++ Library
The C++ Library for Apache GraphAr
Public Member Functions | List of all members
graphar::ExpressionLiteral< T, IsScalar, typename > Class Template Reference

#include <expression.h>

Inheritance diagram for graphar::ExpressionLiteral< T, IsScalar, typename >:
graphar::Expression

Public Member Functions

 ExpressionLiteral (T value)
 
 ExpressionLiteral (const ExpressionLiteral &other)=default
 
Result< ArrowExpression > Evaluate ()
 Evaluate Expression as arrow::compute::Expression e.g. new ExpressionEqual(new ExpressionProperty("a"), new ExpressionLiteral(1)) will be parsed as arrow::compute::equal(arrow::compute::field_ref("a"), arrow::compute::literal(1)) More...
 
- Public Member Functions inherited from graphar::Expression
 Expression (const Expression &other)=default
 

Detailed Description

template<typename T, bool IsScalar = std::is_same_v<T, bool> || std::is_same_v<T, int32_t> || std::is_same_v<T, int64_t> || std::is_same_v<T, float> || std::is_same_v<T, double> || std::is_same_v<T, std::string> || std::is_same_v<T, const char*> || std::is_same_v<T, const char* const>, typename = std::enable_if_t<IsScalar>>
class graphar::ExpressionLiteral< T, IsScalar, typename >

This class wraps the literal. Only bool, int32, int64, float, double and string are allowed.

Definition at line 85 of file expression.h.

Member Function Documentation

◆ Evaluate()

template<typename T , bool IsScalar = std::is_same_v<T, bool> || std::is_same_v<T, int32_t> || std::is_same_v<T, int64_t> || std::is_same_v<T, float> || std::is_same_v<T, double> || std::is_same_v<T, std::string> || std::is_same_v<T, const char*> || std::is_same_v<T, const char* const>, typename = std::enable_if_t<IsScalar>>
Result<ArrowExpression> graphar::ExpressionLiteral< T, IsScalar, typename >::Evaluate ( )
inlinevirtual

Evaluate Expression as arrow::compute::Expression e.g. new ExpressionEqual(new ExpressionProperty("a"), new ExpressionLiteral(1)) will be parsed as arrow::compute::equal(arrow::compute::field_ref("a"), arrow::compute::literal(1))

Returns
The arrow::compute::Expression instance

Implements graphar::Expression.

Definition at line 91 of file expression.h.


The documentation for this class was generated from the following file: