initial matador ng commit

This commit is contained in:
2025-02-02 20:37:12 +01:00
parent 19de5714f4
commit ded3daceb3
378 changed files with 14913 additions and 13431 deletions
@@ -0,0 +1,44 @@
#ifndef MATADOR_ATTRIBUTE_BINDER_HPP
#define MATADOR_ATTRIBUTE_BINDER_HPP
#include "matador/utils/types.hpp"
#include <string>
namespace matador {
class date;
class time;
}
namespace matador::utils {
class value;
class attribute_writer
{
public:
virtual ~attribute_writer() = default;
virtual void write_value(size_t pos, const int8_t &x) = 0;
virtual void write_value(size_t pos, const int16_t &x) = 0;
virtual void write_value(size_t pos, const int32_t &x) = 0;
virtual void write_value(size_t pos, const int64_t &x) = 0;
virtual void write_value(size_t pos, const uint8_t &x) = 0;
virtual void write_value(size_t pos, const uint16_t &x) = 0;
virtual void write_value(size_t pos, const uint32_t &x) = 0;
virtual void write_value(size_t pos, const uint64_t &x) = 0;
virtual void write_value(size_t pos, const bool &x) = 0;
virtual void write_value(size_t pos, const float &x) = 0;
virtual void write_value(size_t pos, const double &x) = 0;
virtual void write_value(size_t pos, const time &x) = 0;
virtual void write_value(size_t pos, const date &x) = 0;
virtual void write_value(size_t pos, const char *x) = 0;
virtual void write_value(size_t pos, const char *x, size_t size) = 0;
virtual void write_value(size_t pos, const std::string &x) = 0;
virtual void write_value(size_t pos, const std::string &x, size_t size) = 0;
virtual void write_value(size_t pos, const blob &x) = 0;
virtual void write_value(size_t pos, const value &x, size_t size) = 0;
};
}
#endif //MATADOR_ATTRIBUTE_BINDER_HPP