iceberg-cpp
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
iceberg::UnboundAggregateImpl< B > Class Template Reference

Template for unbound aggregates that carry a term and operation. More...

#include <aggregate.h>

Inheritance diagram for iceberg::UnboundAggregateImpl< B >:
iceberg::UnboundAggregate iceberg::Aggregate< UnboundTerm< B > > iceberg::Expression iceberg::Unbound< Expression > iceberg::Expression iceberg::util::Formattable iceberg::util::Formattable

Public Member Functions

std::shared_ptr< NamedReferencereference () override
 Returns the underlying named reference for this unbound term.
 
Result< std::shared_ptr< Expression > > Bind (const Schema &schema, bool case_sensitive) const override
 Bind this expression to a concrete schema.
 
- Public Member Functions inherited from iceberg::UnboundAggregate
bool is_unbound_aggregate () const override
 
- Public Member Functions inherited from iceberg::Expression
virtual Result< std::shared_ptr< Expression > > Negate () const
 Returns the negation of this expression, equivalent to not(this).
 
virtual bool Equals (const Expression &other) const
 Returns whether this expression will accept the same values as another.
 
std::string ToString () const override
 Get a user-readable string representation.
 
virtual bool is_unbound_predicate () const
 
virtual bool is_bound_predicate () const
 
virtual bool is_bound_aggregate () const
 
- Public Member Functions inherited from iceberg::Unbound< Expression >
Result< std::shared_ptr< Expression > > Bind (const Schema &schema) const
 Overloaded Bind method that uses case-sensitive matching by default.
 
- Public Member Functions inherited from iceberg::Aggregate< UnboundTerm< B > >
Expression::Operation op () const override
 Returns the operation for an expression node.
 
const std::shared_ptr< T > & term () const
 
std::string ToString () const override
 Get a user-readable string representation.
 

Static Public Member Functions

static Result< std::shared_ptr< UnboundAggregateImpl< B > > > Make (Expression::Operation op, std::shared_ptr< UnboundTerm< B > > term)
 

Additional Inherited Members

- Public Types inherited from iceberg::Expression
enum class  Operation {
  kTrue , kFalse , kIsNull , kNotNull ,
  kIsNan , kNotNan , kLt , kLtEq ,
  kGt , kGtEq , kEq , kNotEq ,
  kIn , kNotIn , kNot , kAnd ,
  kOr , kStartsWith , kNotStartsWith , kCount ,
  kCountNull , kCountStar , kMax , kMin
}
 Operation types for expressions.
 
- Protected Member Functions inherited from iceberg::Aggregate< UnboundTerm< B > >
 Aggregate (Expression::Operation op, std::shared_ptr< T > term)
 
- Static Protected Member Functions inherited from iceberg::Aggregate< UnboundTerm< B > >
static constexpr bool IsSupportedOp (Expression::Operation op)
 
- Protected Attributes inherited from iceberg::Aggregate< UnboundTerm< B > >
Expression::Operation operation_
 
std::shared_ptr< T > term_
 

Detailed Description

template<typename B>
class iceberg::UnboundAggregateImpl< B >

Template for unbound aggregates that carry a term and operation.

Member Function Documentation

◆ Bind()

template<typename B >
Result< std::shared_ptr< Expression > > iceberg::UnboundAggregateImpl< B >::Bind ( const Schema schema,
bool  case_sensitive 
) const
overridevirtual

Bind this expression to a concrete schema.

Parameters
schemaThe schema to bind against
case_sensitiveWhether field name matching should be case sensitive
Returns
A bound expression or an error if binding fails

Implements iceberg::Unbound< Expression >.

◆ reference()

template<typename B >
std::shared_ptr< NamedReference > iceberg::UnboundAggregateImpl< B >::reference ( )
inlineoverridevirtual

Returns the underlying named reference for this unbound term.

Implements iceberg::Unbound< Expression >.


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