39 lines
1.2 KiB
C++
39 lines
1.2 KiB
C++
#ifndef QUERY_PARAMETER_BINDER_HPP
|
|
#define QUERY_PARAMETER_BINDER_HPP
|
|
|
|
#include "matador/utils/types.hpp"
|
|
|
|
#include <string>
|
|
#include <cstring>
|
|
|
|
namespace matador::sql::interface {
|
|
|
|
class parameter_binder
|
|
{
|
|
public:
|
|
virtual ~parameter_binder() = default;
|
|
|
|
virtual void bind(size_t pos, int8_t) = 0;
|
|
virtual void bind(size_t pos, int16_t) = 0;
|
|
virtual void bind(size_t pos, int32_t) = 0;
|
|
virtual void bind(size_t pos, int64_t) = 0;
|
|
virtual void bind(size_t pos, uint8_t) = 0;
|
|
virtual void bind(size_t pos, uint16_t) = 0;
|
|
virtual void bind(size_t pos, uint32_t) = 0;
|
|
virtual void bind(size_t pos, uint64_t) = 0;
|
|
virtual void bind(size_t pos, bool) = 0;
|
|
virtual void bind(size_t pos, float) = 0;
|
|
virtual void bind(size_t pos, double) = 0;
|
|
virtual void bind(size_t pos, const char *) = 0;
|
|
virtual void bind(size_t pos, const char *, size_t size) = 0;
|
|
virtual void bind(size_t pos, const std::string&) = 0;
|
|
virtual void bind(size_t pos, const std::string &x, size_t size) = 0;
|
|
virtual void bind(size_t pos, const utils::blob &) = 0;
|
|
// virtual void bind(size_t pos, const matador::time&) = 0;
|
|
// virtual void bind(size_t pos, const matador::date&) = 0;
|
|
};
|
|
|
|
}
|
|
|
|
#endif //QUERY_PARAMETER_BINDER_HPP
|