MySQL 8.0.37
Source Code Documentation
grow_status.h
Go to the documentation of this file.
1/* Copyright (c) 2023, 2024, Oracle and/or its affiliates.
2
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License, version 2.0,
5 as published by the Free Software Foundation.
6
7 This program is designed to work with certain software (including
8 but not limited to OpenSSL) that is licensed under separate terms,
9 as designated in a particular file or component or in included license
10 documentation. The authors of MySQL hereby grant you an additional
11 permission to link the program and your derivative works with the
12 separately licensed software that they have either included with
13 the program or referenced in the documentation.
14
15 This program is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License, version 2.0, for more details.
19
20 You should have received a copy of the GNU General Public License
21 along with this program; if not, write to the Free Software
22 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
23
24/// @addtogroup Replication
25/// @{
26/// @file grow_status.h
27
28#ifndef MYSQL_BUFFER_GROW_STATUS_H_
29#define MYSQL_BUFFER_GROW_STATUS_H_
30
31#include <ostream>
32#include <string>
33
34namespace mysqlns::buffer {
35
36/// Error statuses for classes that use Grow_calculator.
37enum class Grow_status {
38 /// A grow operation succeeded. The data structure is now of the new
39 /// size.
40 success,
41 /// A grow operation could not be performed because there is a
42 /// configured maximum size. The data structure is unchanged.
44 /// A grow operation failed because memory allocation failed. The
45 /// data structure is unchanged.
47};
48
49/// Return value from debug_string(Grow_status) when the parameter is
50/// not a valid value.
51extern const std::string invalid_grow_status_string;
52
53/// Return a string that describes each enumeration value.
55
56/// Write a string that describes the enumeration value to the stream.
57std::ostream &operator<<(std::ostream &stream, Grow_status status);
58
59} // namespace mysqlns::buffer
60
61/// @} (end of group Replication)
62
63#endif /* MYSQL_BUFFER_GROW_STATUS_H_ */
Definition: buffer_sequence_view.h:51
Grow_status
Error statuses for classes that use Grow_calculator.
Definition: grow_status.h:37
@ exceeds_max_size
A grow operation could not be performed because there is a configured maximum size.
@ success
A grow operation succeeded.
@ out_of_memory
A grow operation failed because memory allocation failed.
const std::string invalid_grow_status_string
Return value from debug_string(Grow_status) when the parameter is not a valid value.
Definition: grow_status.cpp:30
std::ostream & operator<<(std::ostream &stream, Grow_status status)
Write a string that describes the enumeration value to the stream.
Definition: grow_status.cpp:47
std::string debug_string(Grow_status status)
Return a string that describes each enumeration value.
Definition: grow_status.cpp:32
required uint32 status
Definition: replication_asynchronous_connection_failover.proto:61