10#include <nlohmann/json.hpp>
14 using json = nlohmann::json;
22 virtual T
create(
const T& entity, [[maybe_unused]]
const json& opts) = 0;
23 virtual std::optional<T>
read(
const std::string&
id, [[maybe_unused]]
const json& opts) = 0;
24 virtual T
update(
const std::string&
id,
const T& entity, [[maybe_unused]]
const json& opts) = 0;
25 virtual bool remove(
const std::string&
id, [[maybe_unused]]
const json& opts) = 0;
26 virtual std::vector<T>
list([[maybe_unused]]
const json& opts) = 0;
virtual T create(const T &entity, const json &opts)=0
virtual bool remove(const std::string &id, const json &opts)=0
virtual ~CrudInterface()=default
virtual std::optional< T > read(const std::string &id, const json &opts)=0
virtual std::vector< T > list(const json &opts)=0
virtual T update(const std::string &id, const T &entity, const json &opts)=0
router.h
Definition app.h:30
nlohmann::json json
Shorten JSON namespace.
Definition crud.h:14