//===----------------------------------------------------------------------===// // DuckDB // // duckdb/parser/constraints/check_constraint.hpp // // //===----------------------------------------------------------------------===// #pragma once #include "duckdb/common/string_util.hpp" #include "duckdb/parser/constraint.hpp" #include "duckdb/parser/parsed_expression.hpp" namespace duckdb { //! The CheckConstraint contains an expression that must evaluate to TRUE for //! every row in a table class CheckConstraint : public Constraint { public: static constexpr const ConstraintType TYPE = ConstraintType::CHECK; public: DUCKDB_API explicit CheckConstraint(unique_ptr expression); unique_ptr expression; public: DUCKDB_API string ToString() const override; DUCKDB_API unique_ptr Copy() const override; DUCKDB_API void Serialize(FieldWriter &writer) const override; DUCKDB_API static unique_ptr Deserialize(FieldReader &source); }; } // namespace duckdb