Skip to content

Commit 31b8916

Browse files
committed
Move accept_csv_option to struct CsvOptions
1 parent 7d8171f commit 31b8916

File tree

4 files changed

+20
-20
lines changed

4 files changed

+20
-20
lines changed

src/parser/bison_parser.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3721,7 +3721,7 @@ YYLTYPE yylloc = yyloc_default;
37213721
(yyvsp[-2].import_export_option_t)->csv_options = new CsvOptions{};
37223722
}
37233723

3724-
if (!(yyvsp[-2].import_export_option_t)->accept_csv_option((yyvsp[0].csv_option_t))) {
3724+
if (!(yyvsp[-2].import_export_option_t)->csv_options->accept_csv_option((yyvsp[0].csv_option_t))) {
37253725
free((yyvsp[0].csv_option_t)->second);
37263726
delete (yyvsp[0].csv_option_t);
37273727
delete (yyvsp[-2].import_export_option_t);
@@ -3740,7 +3740,7 @@ YYLTYPE yylloc = yyloc_default;
37403740
{
37413741
(yyval.import_export_option_t) = new ImportExportOptions{};
37423742
(yyval.import_export_option_t)->csv_options = new CsvOptions{};
3743-
(yyval.import_export_option_t)->accept_csv_option((yyvsp[0].csv_option_t));
3743+
(yyval.import_export_option_t)->csv_options->accept_csv_option((yyvsp[0].csv_option_t));
37443744

37453745
delete (yyvsp[0].csv_option_t);
37463746
}

src/parser/bison_parser.y

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -545,7 +545,7 @@ import_export_options : import_export_options ',' FORMAT file_type {
545545
$1->csv_options = new CsvOptions{};
546546
}
547547

548-
if (!$1->accept_csv_option($3)) {
548+
if (!$1->csv_options->accept_csv_option($3)) {
549549
free($3->second);
550550
delete $3;
551551
delete $1;
@@ -559,7 +559,7 @@ import_export_options : import_export_options ',' FORMAT file_type {
559559
| csv_option {
560560
$$ = new ImportExportOptions{};
561561
$$->csv_options = new CsvOptions{};
562-
$$->accept_csv_option($1);
562+
$$->csv_options->accept_csv_option($1);
563563

564564
delete $1;
565565
}

src/sql/ImportExportOptions.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ struct CsvOptions {
2828
char* delimiter;
2929
char* null;
3030
char* quote;
31+
32+
bool accept_csv_option(std::pair<CsvOptionType, char*>* option);
3133
};
3234

3335
struct ImportExportOptions {
@@ -37,8 +39,6 @@ struct ImportExportOptions {
3739
ImportType format;
3840
char* encoding;
3941
CsvOptions* csv_options;
40-
41-
bool accept_csv_option(std::pair<CsvOptionType, char*>* option);
4242
};
4343

4444
} // namespace hsql

src/sql/statements.cpp

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -159,32 +159,32 @@ CsvOptions::~CsvOptions() {
159159
free(quote);
160160
}
161161

162-
ImportExportOptions::ImportExportOptions() : format(kImportAuto), encoding(nullptr), csv_options(nullptr) {}
163-
164-
ImportExportOptions::~ImportExportOptions() {
165-
free(encoding);
166-
delete csv_options;
167-
}
168-
169-
bool ImportExportOptions::accept_csv_option(std::pair<CsvOptionType, char*>* option) {
162+
bool CsvOptions::accept_csv_option(std::pair<CsvOptionType, char*>* option) {
170163
switch (option->first) {
171164
case CsvOptionType::Delimiter:
172-
if (csv_options->delimiter != nullptr) return false;
173-
csv_options->delimiter = option->second;
165+
if (delimiter != nullptr) return false;
166+
delimiter = option->second;
174167
break;
175168
case CsvOptionType::Null:
176-
if (csv_options->null != nullptr) return false;
177-
csv_options->null = option->second;
169+
if (null != nullptr) return false;
170+
null = option->second;
178171
break;
179172
case CsvOptionType::Quote:
180-
if (csv_options->quote != nullptr) return false;
181-
csv_options->quote = option->second;
173+
if (quote != nullptr) return false;
174+
quote = option->second;
182175
break;
183176
}
184177

185178
return true;
186179
}
187180

181+
ImportExportOptions::ImportExportOptions() : format(kImportAuto), encoding(nullptr), csv_options(nullptr) {}
182+
183+
ImportExportOptions::~ImportExportOptions() {
184+
free(encoding);
185+
delete csv_options;
186+
}
187+
188188
// ImportStatement
189189
ImportStatement::ImportStatement(ImportType type)
190190
: SQLStatement(kStmtImport),

0 commit comments

Comments
 (0)