MySQL 8.0.39
Source Code Documentation
sql_formatter_options.h
Go to the documentation of this file.
1/*
2 Copyright (c) 2015, 2024, Oracle and/or its affiliates.
3
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License, version 2.0,
6 as published by the Free Software Foundation.
7
8 This program is designed to work with certain software (including
9 but not limited to OpenSSL) that is licensed under separate terms,
10 as designated in a particular file or component or in included license
11 documentation. The authors of MySQL hereby grant you an additional
12 permission to link the program and your derivative works with the
13 separately licensed software that they have either included with
14 the program or referenced in the documentation.
15
16 This program is distributed in the hope that it will be useful,
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 GNU General Public License, version 2.0, for more details.
20
21 You should have received a copy of the GNU General Public License
22 along with this program; if not, write to the Free Software
23 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
24*/
25
26#ifndef SQL_FORMATTER_OPTIONS_INCLUDED
27#define SQL_FORMATTER_OPTIONS_INCLUDED
28
29#include <stddef.h>
30
33#include "template_utils.h"
34#include "typelib.h"
35
36namespace Mysql {
37namespace Tools {
38namespace Dump {
39
40enum class enum_gtid_purged_mode : unsigned long {
44};
45
48 public:
49 explicit Sql_formatter_options(
50 const Mysql_chain_element_options *mysql_chain_element_options);
51
52 void create_options() override;
53
72
74 static const char *gtid_purged_mode_names[4] = {"OFF", "AUTO", "ON", NullS};
75 TYPELIB static gtid_purged_mode_typelib = {
76 array_elements(gtid_purged_mode_names) - 1, "", gtid_purged_mode_names,
77 nullptr};
78 return &gtid_purged_mode_typelib;
79 }
80};
81
82} // namespace Dump
83} // namespace Tools
84} // namespace Mysql
85
86#endif
Common abstract class for options providers.
Definition: abstract_options_provider.h:55
Definition: mysql_chain_element_options.h:37
Definition: sql_formatter_options.h:47
bool m_hex_blob
Definition: sql_formatter_options.h:61
bool m_add_locks
Definition: sql_formatter_options.h:54
enum_gtid_purged_mode m_gtid_purged
Definition: sql_formatter_options.h:70
bool m_insert_type_replace
Definition: sql_formatter_options.h:62
bool m_suppress_create_database
Definition: sql_formatter_options.h:65
bool m_timezone_consistent
Definition: sql_formatter_options.h:66
void create_options() override
Creates all options that will be provided.
Definition: sql_formatter_options.cc:30
Sql_formatter_options(const Mysql_chain_element_options *mysql_chain_element_options)
Definition: sql_formatter_options.cc:97
bool m_suppress_create_table
Definition: sql_formatter_options.h:64
bool m_deffer_table_indexes
Definition: sql_formatter_options.h:56
bool m_innodb_stats_tables_included
Definition: sql_formatter_options.h:68
bool m_drop_user
Definition: sql_formatter_options.h:59
const TYPELIB * get_gtid_purged_mode_typelib()
Definition: sql_formatter_options.h:73
bool m_drop_database
Definition: sql_formatter_options.h:57
bool m_column_statistics
Definition: sql_formatter_options.h:69
const Mysql_chain_element_options * m_mysql_chain_element_options
Definition: sql_formatter_options.h:71
bool m_insert_type_ignore
Definition: sql_formatter_options.h:63
bool m_charsets_consistent
Definition: sql_formatter_options.h:55
bool m_dump_column_names
Definition: sql_formatter_options.h:60
bool m_skip_definer
Definition: sql_formatter_options.h:67
bool m_drop_table
Definition: sql_formatter_options.h:58
#define NullS
Definition of the null string (a null pointer of type char *), used in some of our string handling co...
Definition: m_string.h:53
enum_gtid_purged_mode
Definition: sql_formatter_options.h:40
Definition: abstract_connection_program.h:38
Definition: typelib.h:35
#define array_elements(A)
Definition: validate_password_imp.cc:48