1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
[/
Copyright (c) 2019-2023 Ruben Perez Hidalgo (rubenperez038 at gmail dot com)
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
]
[section:boost__mysql__StaticRow StaticRow concept]
A `StaticRow` is a C++ type that can be used to model a row within the
static interface (i.e. [reflink static_results], [reflink static_execution_state]).
A type `T` is a `StaticRow` if either of the following is true:
* It is a `struct` annotated with Boost.Describe data (i.e., having
`boost::describe::has_describe_members<T>::value == true`), and all the described
members fulfill the `ReadableField` exposition-only concept.
* It is a `std::tuple` instantiation, and all of its types fulfill the
`ReadableField` exposition-only concept.
Note that empty Describe structs and empty tuples are valid `StaticRow`s.
A `ReadableField` is C++ type that can be used to model a single value in a database row.
A type `F` is a `ReadableField` if it is any of the types listed
[link mysql.static_interface.readable_field_reference in this table]. The set of readable field types
is currently fixed and can't be extended by the user. If this is something you have interest in,
[@https://github.com/boostorg/mysql/issues/new please file an issue] with your use case to the repo.
The set of allowable types may be extended in future releases, both for fields and for rows.
[endsect]
|