refactored identifier, added tests and added primary_key_accessor and tests
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
#ifndef MATADOR_IDENTIFIER_ACCESSOR_HPP
|
||||
#define MATADOR_IDENTIFIER_ACCESSOR_HPP
|
||||
|
||||
#include "matador/utils/identifier.hpp"
|
||||
#include "matador/utils/result.hpp"
|
||||
|
||||
namespace matador::utils {
|
||||
class identifier_setter : public identifier_serializer {
|
||||
public:
|
||||
explicit identifier_setter(identifier &id);
|
||||
|
||||
template <typename ValueType>
|
||||
void set(const ValueType &val) {
|
||||
id_.serialize(*this, val);
|
||||
}
|
||||
void serialize(int16_t &, const field_attributes &) override;
|
||||
void serialize(int32_t &, const field_attributes &) override;
|
||||
void serialize(int64_t &, const field_attributes &) override;
|
||||
void serialize(uint8_t &, const field_attributes &) override;
|
||||
void serialize(uint16_t &, const field_attributes &) override;
|
||||
void serialize(uint32_t &, const field_attributes &) override;
|
||||
void serialize(uint64_t &, const field_attributes &) override;
|
||||
void serialize(std::string &, const field_attributes &) override;
|
||||
void serialize(null_type_t &, const field_attributes &) override;
|
||||
|
||||
private:
|
||||
identifier &id_;
|
||||
};
|
||||
}
|
||||
#endif //MATADOR_IDENTIFIER_ACCESSOR_HPP
|
||||
Reference in New Issue
Block a user