33 lines
926 B
C++
33 lines
926 B
C++
#ifndef QUERY_DIALECT_BUILDER_HPP
|
|
#define QUERY_DIALECT_BUILDER_HPP
|
|
|
|
#include "matador/sql/dialect.hpp"
|
|
|
|
namespace matador::sql {
|
|
|
|
class dialect_builder
|
|
{
|
|
public:
|
|
static dialect_builder& builder();
|
|
|
|
dialect_builder& create();
|
|
|
|
dialect_builder& with_token_replace_map(const dialect::token_to_string_map &token_replace_map);
|
|
dialect_builder& with_data_type_replace_map(const dialect::data_type_to_string_map &data_type_replace_map);
|
|
dialect_builder& with_placeholder_func(const dialect::next_placeholder_func &func);
|
|
dialect_builder& with_default_schema_name(const std::string &schema_name);
|
|
dialect_builder& with_bool_strings(const std::string &true_string, const std::string &false_string);
|
|
dialect_builder& with_escape_string_func(const dialect::to_escaped_string_func &func);
|
|
|
|
dialect build();
|
|
|
|
private:
|
|
dialect_builder() = default;
|
|
|
|
private:
|
|
dialect dialect_;
|
|
};
|
|
|
|
}
|
|
#endif //QUERY_DIALECT_BUILDER_HPP
|