22 namespace foreign_storage {
29 , regex_file_buffer_parser_{foreign_table} {}
34 const bool disable_cache)
36 , regex_file_buffer_parser_{foreign_table} {}
39 void validate_regex(
const std::string& regex,
const std::string& option_name) {
42 }
catch (
const std::exception& e) {
53 if (line_regex_it == foreign_table->
options.end() || line_regex_it->second.empty()) {
55 "Foreign table options must contain a non-empty value for \"" +
60 auto line_start_regex_it =
62 if (line_start_regex_it != foreign_table->
options.end()) {
63 if (line_start_regex_it->second.empty()) {
66 "\", when set, must contain a non-empty value."};
76 return supported_table_options;
80 std::set<std::string_view> supported_table_options(
85 return supported_table_options;
const RegexFileBufferParser regex_file_buffer_parser_
static const std::string BUFFER_SIZE_KEY
std::set< std::string_view > getAllRegexTableOptions() const
static const std::set< std::string_view > regex_table_options_
static const std::string LINE_REGEX_KEY
static const std::string HEADER_KEY
void validateTableOptions(const ForeignTable *foreign_table) const override
const std::set< std::string_view > & getSupportedTableOptions() const override
const TextFileBufferParser & getFileBufferParser() const override
void validateTableOptions(const ForeignTable *foreign_table) const override
static const std::string LINE_START_REGEX_KEY
const std::set< std::string_view > & getSupportedTableOptions() const override
void validate_regex(const std::string ®ex, const std::string &option_name)