//===----------------------------------------------------------------------===// // DuckDB // // duckdb/planner/expression/bound_lambda_expression.hpp // // //===----------------------------------------------------------------------===// #pragma once #include "duckdb/planner/expression.hpp" #include "duckdb/parser/expression/lambda_expression.hpp" namespace duckdb { class BoundLambdaExpression : public Expression { public: static constexpr const ExpressionClass TYPE = ExpressionClass::BOUND_LAMBDA; public: BoundLambdaExpression(ExpressionType type_p, LogicalType return_type_p, unique_ptr lambda_expr_p, idx_t parameter_count_p); unique_ptr lambda_expr; vector> captures; idx_t parameter_count; public: string ToString() const override; bool Equals(const BaseExpression &other) const override; unique_ptr Copy() override; void Serialize(FieldWriter &writer) const override; static unique_ptr Deserialize(ExpressionDeserializationState &state, FieldReader &reader); }; } // namespace duckdb