MySQL
9.6.0
Source Code Documentation
meta.h
Go to the documentation of this file.
1
// Copyright (c) 2025, 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
#ifndef MYSQL_META_META_H
25
#define MYSQL_META_META_H
26
27
/// @file
28
/// Experimental API header
29
30
// Is_same_as_all<T, U, ...> is true if all the given types are the same type.
31
#include "
mysql/meta/is_same_as_all.h
"
32
33
// Is_either<T, U...> is true if T is the same type as any of the U.
34
#include "
mysql/meta/is_either.h
"
35
36
// Is_charlike<T> is true if T is char, unsigned char, or std::byte.
37
// Is_pointer_to_charlike<T> is true if T is pointer to one of those types.
38
// Is_stringlike<T> is true if T has a `data` and a `size` member.
39
#include "
mysql/meta/is_charlike.h
"
40
41
// Is_const_ref<T> is true if T has const and reference qualifiers.
42
#include "
mysql/meta/is_const_ref.h
"
43
44
// Is_pointer<T> is equivalent to std::is_pointer_v<T>, but it is a concept,
45
// which is sometimes needed. Is_pointer_to<T, U> is true if T is a pointer and
46
// the pointed-to type is U.
47
#include "
mysql/meta/is_pointer.h
"
48
49
// Is_same_ignore_const<T, U> is true if T and U are the same or differ only in
50
// const-ness.
51
#include "
mysql/meta/is_same_ignore_const.h
"
52
53
// Is_specialization<T, U> is true if class T is a specialization of class
54
// template U, where U takes type template arguments. Is_nontype_specialization
55
// is the same, but works when U takes non-type template arguments.
56
#include "
mysql/meta/is_specialization.h
"
57
58
// Optional_is_same<T[, U]> is true if U is omitted or void, or T and U are the
59
// same type.
60
#include "
mysql/meta/optional_is_same.h
"
61
62
#endif
// ifndef MYSQL_META_META_H
is_charlike.h
Experimental API header.
is_const_ref.h
Experimental API header.
is_either.h
Experimental API header.
is_pointer.h
Experimental API header.
is_same_as_all.h
Experimental API header.
is_same_ignore_const.h
Experimental API header.
is_specialization.h
Experimental API header.
optional_is_same.h
Experimental API header.
libs
mysql
meta
meta.h
Generated by
1.9.2