|
- #pragma once
-
- #include "create_update_context.h"
-
- namespace cpphibernate {
- namespace mariadb {
-
- /* create_update_context */
-
- template<typename T_dataset>
- create_update_context::create_update_context(
- const schema_t& p_schema,
- ::cppmariadb::connection& p_connection,
- T_dataset& p_dataset)
- : data_context (p_schema, p_connection, p_dataset)
- , filter (nullptr)
- , derived_table (nullptr)
- , owner_field (nullptr)
- , owner_key ()
- , index (0)
- { }
-
- template<typename T_dataset>
- create_update_context::create_update_context(
- const schema_t& p_schema,
- ::cppmariadb::connection& p_connection,
- T_dataset& p_dataset,
- const filter_t& p_filter)
- : data_context (p_schema, p_connection, p_dataset)
- , filter (&p_filter)
- , derived_table (nullptr)
- , owner_field (nullptr)
- , owner_key ()
- , index (0)
- { }
-
- decltype(auto) create_update_context::make_create_context() const
- {
- auto ret = *this;
- ret.filter = nullptr;
- return ret;
- }
-
- decltype(auto) create_update_context::make_update_context(const filter_t& p_filter) const
- {
- auto ret = *this;
- ret.filter = &p_filter;
- return ret;
- }
-
- bool create_update_context::is_create() const
- { return !static_cast<bool>(filter); }
-
- bool create_update_context::is_update() const
- { return static_cast<bool>(filter); }
-
- } }
|