//===----------------------------------------------------------------------===// // DuckDB // // duckdb/parser/parsed_data/parse_info.hpp // // //===----------------------------------------------------------------------===// #pragma once #include "duckdb/common/common.hpp" namespace duckdb { struct ParseInfo { virtual ~ParseInfo() { } public: template TARGET &Cast() { D_ASSERT(dynamic_cast(this)); return reinterpret_cast(*this); } template const TARGET &Cast() const { D_ASSERT(dynamic_cast(this)); return reinterpret_cast(*this); } }; } // namespace duckdb