iceberg-cpp
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
expression_visitor.h File Reference
#include <concepts>
#include <memory>
#include <typeinfo>
#include "iceberg/expression/aggregate.h"
#include "iceberg/expression/expression.h"
#include "iceberg/expression/literal.h"
#include "iceberg/expression/predicate.h"
#include "iceberg/expression/term.h"
#include "iceberg/iceberg_export.h"
#include "iceberg/result.h"
#include "iceberg/util/checked_cast.h"
#include "iceberg/util/macros.h"

Go to the source code of this file.

Classes

class  iceberg::ExpressionVisitor< R >
 Base visitor for traversing expression trees. More...
 
class  iceberg::BoundVisitor< R >
 Visitor for bound expressions. More...
 

Namespaces

namespace  iceberg
 Core Apache Iceberg C++ APIs.
 

Functions

template<typename R , typename V >
requires std::derived_from<V, ExpressionVisitor<R>>
Result< R > iceberg::Visit (const std::shared_ptr< Expression > &expr, V &visitor)
 Traverse an expression tree with a visitor.
 

Detailed Description

Visitor pattern implementation for traversing Iceberg expression trees.