.. _program_listing_file_include_util_db_relational_BackendConcept.hpp: Program Listing for File BackendConcept.hpp =========================================== |exhale_lsh| :ref:`Return to documentation for file ` (``include\util\db\relational\BackendConcept.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #pragma once #include "util/common/Result.hpp" #include "util/db/relational/Types.hpp" #include #include namespace PDJE_UTIL::db::relational { template concept RelationalBackendConcept = requires(typename Backend::config_type cfg, Backend backend, std::string_view sql, const Params ¶ms) { typename Backend::config_type; { Backend::create(cfg) } -> std::same_as>; { Backend::destroy(cfg) } -> std::same_as>; { backend.open(cfg) } -> std::same_as>; { backend.close() } -> std::same_as>; { backend.execute(sql, params) } -> std::same_as>; { backend.query(sql, params) } -> std::same_as>; { backend.begin_transaction() } -> std::same_as>; { backend.commit() } -> std::same_as>; { backend.rollback() } -> std::same_as>; }; } // namespace PDJE_UTIL::db::relational