mirror of
https://github.com/silverqx/TinyORM.git
synced 2025-12-30 07:19:34 -06:00
drivers fixed new Clang Tidy v18 warnings
- clang-analyzer-core.StackAddressEscape - performance-enum-size - readability-avoid-return-with-void-value - readability-redundant-inline-specifier - readability-redundant-member-init - readability-static-accessed-through-instance
This commit is contained in:
@@ -5,6 +5,8 @@
|
||||
#include <orm/macros/systemheader.hpp>
|
||||
TINY_SYSTEM_HEADER
|
||||
|
||||
#include <QtTypes>
|
||||
|
||||
#include <orm/macros/commonnamespace.hpp>
|
||||
|
||||
TINYORM_BEGIN_COMMON_NAMESPACE
|
||||
@@ -13,7 +15,7 @@ namespace Orm::Drivers
|
||||
{
|
||||
|
||||
/*! Result set cursor position type. */
|
||||
enum CursorPosition
|
||||
enum CursorPosition : qint8
|
||||
{
|
||||
/*! Cursor position before the first row. */
|
||||
BeforeFirstRow = -1,
|
||||
@@ -22,7 +24,7 @@ namespace Orm::Drivers
|
||||
};
|
||||
|
||||
/*! Numerical precision policies for floating point numbers. */
|
||||
enum struct NumericalPrecisionPolicy
|
||||
enum struct NumericalPrecisionPolicy : qint8
|
||||
{
|
||||
/*! Force 32bit integer values. The fractional part is silently discarded. */
|
||||
LowPrecisionInt32 = 0x01,
|
||||
@@ -35,7 +37,7 @@ namespace Orm::Drivers
|
||||
};
|
||||
|
||||
/*! Type of a bind parameter (dummy type for API compatibility). */
|
||||
enum struct ParamType
|
||||
enum struct ParamType : qint8
|
||||
{
|
||||
/*! The bind parameter to put data into the database. */
|
||||
In = 0,
|
||||
|
||||
@@ -24,7 +24,7 @@ namespace Orm::Drivers
|
||||
{
|
||||
public:
|
||||
/*! An error type type. */
|
||||
enum ErrorType
|
||||
enum ErrorType : qint8
|
||||
{
|
||||
NoError,
|
||||
ConnectionError,
|
||||
@@ -38,17 +38,17 @@ namespace Orm::Drivers
|
||||
const QString &driverText = {}, const QString &databaseText = {}, // NOLINT(google-explicit-constructor)
|
||||
ErrorType errorType = NoError, const QString &errorCode = {}) noexcept;
|
||||
/*! Default destructor. */
|
||||
inline ~DummySqlError() = default;
|
||||
~DummySqlError() = default;
|
||||
|
||||
/*! Copy constructor. */
|
||||
inline DummySqlError(const DummySqlError &) = default;
|
||||
DummySqlError(const DummySqlError &) = default;
|
||||
/*! Copy assignment operator. */
|
||||
inline DummySqlError &operator=(const DummySqlError &) = default;
|
||||
DummySqlError &operator=(const DummySqlError &) = default;
|
||||
|
||||
/*! Move constructor. */
|
||||
inline DummySqlError(DummySqlError &&) noexcept = default;
|
||||
DummySqlError(DummySqlError &&) noexcept = default;
|
||||
/*! Move assignment operator. */
|
||||
inline DummySqlError &operator=(DummySqlError &&) noexcept = default;
|
||||
DummySqlError &operator=(DummySqlError &&) noexcept = default;
|
||||
|
||||
/*! Equality comparison operator for the SqlError. */
|
||||
inline bool operator==(const DummySqlError &other) const noexcept;
|
||||
@@ -73,14 +73,14 @@ namespace Orm::Drivers
|
||||
|
||||
private:
|
||||
/*! Driver-specific error text. */
|
||||
QString m_driverText {};
|
||||
QString m_driverText;
|
||||
/*! Database-specific error text. */
|
||||
QString m_databaseText {};
|
||||
QString m_databaseText;
|
||||
/*! An error type. */
|
||||
[[maybe_unused]]
|
||||
DummySqlError::ErrorType m_errorType = NoError;
|
||||
/*! Database-specific error code. */
|
||||
QString m_errorCode {};
|
||||
QString m_errorCode;
|
||||
};
|
||||
|
||||
/* public */
|
||||
|
||||
@@ -17,9 +17,9 @@ namespace Orm::Drivers::Exceptions
|
||||
struct MySqlErrorType
|
||||
{
|
||||
/*! Prepared database-specific error code. */
|
||||
QString errNo {};
|
||||
QString errNo;
|
||||
/*! Prepared database-specific error message. */
|
||||
QString errorMessage {};
|
||||
QString errorMessage;
|
||||
};
|
||||
#endif // TINYDRIVERS_MYSQL_DRIVER
|
||||
|
||||
|
||||
@@ -40,14 +40,14 @@ namespace Orm::Drivers
|
||||
~SqlDatabase() noexcept;
|
||||
|
||||
/*! Copy constructor. */
|
||||
inline SqlDatabase(const SqlDatabase &) = default;
|
||||
SqlDatabase(const SqlDatabase &) = default;
|
||||
/*! Copy assignment operator. */
|
||||
inline SqlDatabase &operator=(const SqlDatabase &) = default;
|
||||
SqlDatabase &operator=(const SqlDatabase &) = default;
|
||||
|
||||
/*! Move constructor. */
|
||||
inline SqlDatabase(SqlDatabase &&) noexcept = default;
|
||||
SqlDatabase(SqlDatabase &&) noexcept = default;
|
||||
/*! Move assignment operator. */
|
||||
inline SqlDatabase &operator=(SqlDatabase &&) noexcept = default;
|
||||
SqlDatabase &operator=(SqlDatabase &&) noexcept = default;
|
||||
|
||||
/* Database connection */
|
||||
/*! Open the database connection using the current connection values. */
|
||||
|
||||
@@ -24,21 +24,21 @@ namespace Orm::Drivers
|
||||
{
|
||||
protected:
|
||||
/*! Default constructor. */
|
||||
inline SqlDatabaseManager() = default;
|
||||
SqlDatabaseManager() = default;
|
||||
|
||||
public:
|
||||
/*! Copy constructor. */
|
||||
inline SqlDatabaseManager(const SqlDatabaseManager &) = default;
|
||||
SqlDatabaseManager(const SqlDatabaseManager &) = default;
|
||||
/*! Copy assignment operator. */
|
||||
inline SqlDatabaseManager &operator=(const SqlDatabaseManager &) = default; // clazy:exclude=function-args-by-value
|
||||
SqlDatabaseManager &operator=(const SqlDatabaseManager &) = default; // clazy:exclude=function-args-by-value
|
||||
|
||||
/*! Move constructor. */
|
||||
inline SqlDatabaseManager(SqlDatabaseManager &&) noexcept = default;
|
||||
SqlDatabaseManager(SqlDatabaseManager &&) noexcept = default;
|
||||
/*! Move assignment operator. */
|
||||
inline SqlDatabaseManager &operator=(SqlDatabaseManager &&) noexcept = default;
|
||||
SqlDatabaseManager &operator=(SqlDatabaseManager &&) noexcept = default;
|
||||
|
||||
/*! Default destructor. */
|
||||
inline ~SqlDatabaseManager() = default;
|
||||
~SqlDatabaseManager() = default;
|
||||
|
||||
/*! Default Database Connection Name. */
|
||||
static const QString defaultConnection;
|
||||
|
||||
@@ -41,7 +41,7 @@ namespace Orm::Drivers
|
||||
but were added back to be API compatible with QSqlDriver::DriverFeature. */
|
||||
|
||||
/*! Supported driver features enum. */
|
||||
enum DriverFeature
|
||||
enum DriverFeature : qint8
|
||||
{
|
||||
/*! Supports batched operations (unused, for API compatibility). */
|
||||
BatchOperations,
|
||||
@@ -80,7 +80,7 @@ namespace Orm::Drivers
|
||||
};
|
||||
|
||||
/*! Identifier type enum. */
|
||||
enum IdentifierType
|
||||
enum IdentifierType : qint8
|
||||
{
|
||||
/*! Field/column name. */
|
||||
FieldName,
|
||||
@@ -89,7 +89,7 @@ namespace Orm::Drivers
|
||||
};
|
||||
|
||||
/*! Database driver type enum. */
|
||||
enum DbmsType
|
||||
enum DbmsType : qint8
|
||||
{
|
||||
/*! MySQL database driver. */
|
||||
MySqlServer,
|
||||
|
||||
@@ -24,7 +24,7 @@ namespace Orm::Drivers
|
||||
using size_type = qint64;
|
||||
|
||||
/*! Determine whether a field is required during INSERT statements. */
|
||||
enum struct RequiredStatus
|
||||
enum struct RequiredStatus : qint8
|
||||
{
|
||||
/*! Unknown required field status. */
|
||||
Unknown = -1,
|
||||
@@ -41,20 +41,20 @@ namespace Orm::Drivers
|
||||
explicit SqlField(QString fieldName = {}, QMetaType metaType = {},
|
||||
QString tableName = {});
|
||||
/*! Default destructor. */
|
||||
inline ~SqlField() = default;
|
||||
~SqlField() = default;
|
||||
|
||||
/*! Copy constructor. */
|
||||
inline SqlField(const SqlField &) = default;
|
||||
SqlField(const SqlField &) = default;
|
||||
/*! Copy assignment operator. */
|
||||
inline SqlField &operator=(const SqlField &) = default;
|
||||
SqlField &operator=(const SqlField &) = default;
|
||||
|
||||
/*! Move constructor. */
|
||||
inline SqlField(SqlField &&) noexcept = default;
|
||||
SqlField(SqlField &&) noexcept = default;
|
||||
/*! Move assignment operator. */
|
||||
inline SqlField &operator=(SqlField &&) noexcept = default;
|
||||
SqlField &operator=(SqlField &&) noexcept = default;
|
||||
|
||||
/*! Equality comparison operator for the SqlField. */
|
||||
inline bool operator==(const SqlField &) const = default;
|
||||
bool operator==(const SqlField &) const = default;
|
||||
|
||||
/*! Swap the SqlField. */
|
||||
void swap(SqlField &other) noexcept;
|
||||
@@ -155,9 +155,9 @@ namespace Orm::Drivers
|
||||
/*! Table name a field belongs to. */
|
||||
QString m_table;
|
||||
/*! Underlying database field type name (DB dependent). */
|
||||
QString m_sqlTypeName {}; // Moved up here for a better memory layout/padding
|
||||
QString m_sqlTypeName; // Moved up here for a better memory layout/padding
|
||||
/*! Field default value. */
|
||||
QVariant m_defaultValue {};
|
||||
QVariant m_defaultValue;
|
||||
/*! Qt metatype. */
|
||||
QMetaType m_metaType;
|
||||
/*! Determine whether a field is required during INSERT statements. */
|
||||
|
||||
@@ -21,22 +21,22 @@ namespace Orm::Drivers
|
||||
using size_type = int;
|
||||
|
||||
/*! Default constructor. */
|
||||
inline SqlRecord() = default;
|
||||
SqlRecord() = default;
|
||||
/*! Default destructor. */
|
||||
inline ~SqlRecord() = default;
|
||||
~SqlRecord() = default;
|
||||
|
||||
/*! Copy constructor. */
|
||||
inline SqlRecord(const SqlRecord &) = default;
|
||||
SqlRecord(const SqlRecord &) = default;
|
||||
/*! Copy assignment operator. */
|
||||
inline SqlRecord &operator=(const SqlRecord &) = default;
|
||||
SqlRecord &operator=(const SqlRecord &) = default;
|
||||
|
||||
/*! Move constructor. */
|
||||
inline SqlRecord(SqlRecord &&) noexcept = default;
|
||||
SqlRecord(SqlRecord &&) noexcept = default;
|
||||
/*! Move assignment operator. */
|
||||
inline SqlRecord &operator=(SqlRecord &&) noexcept = default;
|
||||
SqlRecord &operator=(SqlRecord &&) noexcept = default;
|
||||
|
||||
/*! Equality comparison operator for the SqlRecord. */
|
||||
inline bool operator==(const SqlRecord &) const = default;
|
||||
bool operator==(const SqlRecord &) const = default;
|
||||
|
||||
/*! Swap the SqlRecord. */
|
||||
inline void swap(SqlRecord &other) noexcept;
|
||||
|
||||
@@ -46,7 +46,7 @@ namespace Orm::Drivers
|
||||
|
||||
protected:
|
||||
/*! Query placeholders syntax enum. */
|
||||
enum BindingSyntax
|
||||
enum BindingSyntax : qint8
|
||||
{
|
||||
/*! Positional placeholders using the ? character. */
|
||||
PositionalBinding,
|
||||
|
||||
@@ -58,8 +58,7 @@ namespace Private
|
||||
static_assert (Private::is_comparable_to_nullptr<T>::value,
|
||||
"The NotNull T template argument cannot be the nullptr.");
|
||||
|
||||
template<typename U,
|
||||
typename = std::enable_if_t<std::is_convertible_v<U, T>>>
|
||||
template<std::convertible_to<T> U>
|
||||
constexpr NotNull(U &&u) // NOLINT(google-explicit-constructor)
|
||||
: m_ptr(std::forward<U>(u))
|
||||
{
|
||||
@@ -67,25 +66,23 @@ namespace Private
|
||||
std::terminate();
|
||||
}
|
||||
|
||||
template<typename = std::enable_if_t<!std::is_same_v<std::nullptr_t, T>>>
|
||||
constexpr NotNull(T u) // NOLINT(google-explicit-constructor)
|
||||
constexpr NotNull(T u) requires (!std::is_same_v<std::nullptr_t, T>) // NOLINT(google-explicit-constructor)
|
||||
: m_ptr(std::move(u))
|
||||
{
|
||||
if (m_ptr == nullptr)
|
||||
std::terminate();
|
||||
}
|
||||
|
||||
template<typename U,
|
||||
typename = std::enable_if_t<std::is_convertible_v<U, T>>>
|
||||
template<std::convertible_to<T> U>
|
||||
constexpr NotNull(const NotNull<U> &other) // NOLINT(google-explicit-constructor)
|
||||
: NotNull(other.get())
|
||||
{}
|
||||
|
||||
inline NotNull(const NotNull &) = default;
|
||||
inline NotNull &operator=(const NotNull &) = default;
|
||||
NotNull(const NotNull &) = default;
|
||||
NotNull &operator=(const NotNull &) = default;
|
||||
|
||||
inline NotNull(NotNull &&) = default;
|
||||
inline NotNull &operator=(NotNull &&) = default;
|
||||
NotNull(NotNull &&) = default;
|
||||
NotNull &operator=(NotNull &&) = default;
|
||||
|
||||
/*! Return the managed pointer (allows access to the smart pointer). */
|
||||
constexpr Private::value_or_reference_return_t<T> get() const // NOLINT(readability-const-return-type)
|
||||
|
||||
@@ -35,7 +35,7 @@ namespace Support
|
||||
/*! Constructor. */
|
||||
inline explicit SqlDatabasePrivate(std::shared_ptr<SqlDriver> &&driver) noexcept;
|
||||
/*! Default destructor. */
|
||||
inline ~SqlDatabasePrivate() = default;
|
||||
~SqlDatabasePrivate() = default;
|
||||
|
||||
/* Database connection */
|
||||
/*! Clone the SqlDatabasePrivate. */
|
||||
@@ -98,18 +98,18 @@ namespace Support
|
||||
/*! Connection driver name. */
|
||||
QString driverName;
|
||||
/*! Connection name. */
|
||||
QString connectionName {};
|
||||
QString connectionName;
|
||||
|
||||
/*! Connection hostname. */
|
||||
QString hostName {};
|
||||
QString hostName;
|
||||
/*! Connection database name. */
|
||||
QString databaseName {};
|
||||
QString databaseName;
|
||||
/*! Connection username. */
|
||||
QString username {};
|
||||
QString username;
|
||||
/*! Connection password. */
|
||||
QString password {};
|
||||
QString password;
|
||||
/*! Connection extra options. */
|
||||
QString connectionOptions {};
|
||||
QString connectionOptions;
|
||||
|
||||
/*! Connection port. */
|
||||
int port = -1;
|
||||
|
||||
@@ -37,7 +37,7 @@ namespace Orm::Drivers
|
||||
/*! Is the connection currently open? */
|
||||
bool isOpen = false;
|
||||
/*! The current database connection name (used in exceptions and logs). */
|
||||
QString connectionName {};
|
||||
QString connectionName;
|
||||
};
|
||||
|
||||
/* public */
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace Orm::Drivers
|
||||
/*! Constructor. */
|
||||
explicit SqlResultPrivate(const std::weak_ptr<SqlDriver> &driver) noexcept;
|
||||
/*! Default destructor. */
|
||||
inline ~SqlResultPrivate() = default;
|
||||
~SqlResultPrivate() = default;
|
||||
|
||||
/* Prepared queries */
|
||||
/*! Determine whether a value stored in the given QVariant isNull(). */
|
||||
@@ -47,12 +47,12 @@ namespace Orm::Drivers
|
||||
std::weak_ptr<SqlDriver> sqldriver;
|
||||
|
||||
/*! The current database connection name (used in exceptions and logs). */
|
||||
QString connectionName {};
|
||||
QString connectionName;
|
||||
|
||||
/*! The current SQL query text. */
|
||||
QString query {};
|
||||
QString query;
|
||||
/*! Bound values for a prepared statement. */
|
||||
QList<QVariant> boundValues {};
|
||||
QList<QVariant> boundValues;
|
||||
|
||||
/*! Connection numerical precision policy. */
|
||||
NumericalPrecisionPolicy precisionPolicy = LowPrecisionDouble;
|
||||
|
||||
@@ -35,9 +35,9 @@ namespace Orm::Drivers::Support
|
||||
using size_type = typename ContainerType::size_type;
|
||||
|
||||
/*! Default constructor. */
|
||||
inline ConnectionsHashPrivate() = default;
|
||||
ConnectionsHashPrivate() = default;
|
||||
/*! Default destructor. */
|
||||
inline ~ConnectionsHashPrivate() = default;
|
||||
~ConnectionsHashPrivate() = default;
|
||||
|
||||
/* Lookup */
|
||||
/*! Get a connection by the given connection name. */
|
||||
@@ -71,9 +71,9 @@ namespace Orm::Drivers::Support
|
||||
|
||||
private:
|
||||
/*! Database connections hash. */
|
||||
ContainerType m_data {};
|
||||
ContainerType m_data;
|
||||
/*! Shared mutex. */
|
||||
mutable std::shared_mutex m_mutex {};
|
||||
mutable std::shared_mutex m_mutex;
|
||||
};
|
||||
|
||||
/* public */
|
||||
|
||||
@@ -29,7 +29,7 @@ namespace Support
|
||||
/*! Constructor. */
|
||||
inline SqlDriverFactoryPrivate(QString &&driver, const QString &connection);
|
||||
/*! Deleted destructor. */
|
||||
inline ~SqlDriverFactoryPrivate() = default;
|
||||
~SqlDriverFactoryPrivate() = default;
|
||||
|
||||
/*! Create a SqlDriver instance based on the driverName data member. */
|
||||
std::shared_ptr<SqlDriver> make() const;
|
||||
|
||||
@@ -121,13 +121,13 @@ namespace
|
||||
/*! Get the MySQL driver shared library basename for MSVC. */
|
||||
inline QStringList getDriverBasenameMsvc(const QString &driverBasenameRaw)
|
||||
{
|
||||
static auto versionMajor = QString::number(TINYDRIVERS_VERSION_MAJOR);
|
||||
static const auto driverBasenameVersion = driverBasenameRaw % versionMajor;
|
||||
static const auto versionMajor = QString::number(TINYDRIVERS_VERSION_MAJOR);
|
||||
static const auto driverBasenameVersion = driverBasenameRaw + versionMajor;
|
||||
|
||||
return {
|
||||
// qmake build doesn't support appending d after the basename for Debug builds
|
||||
#if defined(TINYDRIVERS_DEBUG) && !defined(TINY_QMAKE_BUILD)
|
||||
driverBasenameVersion % 'd'_L1, // TinyMySql0d.dll
|
||||
driverBasenameVersion + 'd'_L1, // TinyMySql0d.dll
|
||||
#endif
|
||||
driverBasenameVersion, // TinyMySql0.dll
|
||||
/* As the last, try to load from the raw basename without any postfixes,
|
||||
@@ -141,16 +141,16 @@ namespace
|
||||
/*! Get the MySQL driver shared library basename on Linux. */
|
||||
inline QStringList getDriverBasenameLinux(const QString &driverBasenameRaw)
|
||||
{
|
||||
static const auto driverBasenameLib = u"lib"_s % driverBasenameRaw;
|
||||
static const auto driverBasenameLib = u"lib"_s + driverBasenameRaw;
|
||||
|
||||
return {
|
||||
// qmake build doesn't support appending d after the basename for Debug builds
|
||||
#if defined(TINYDRIVERS_DEBUG) && !defined(TINY_QMAKE_BUILD)
|
||||
driverBasenameLib % 'd'_L1, // libTinyMySqld.so
|
||||
driverBasenameLib + 'd'_L1, // libTinyMySqld.so
|
||||
#endif
|
||||
driverBasenameLib, // libTinyMySql.so
|
||||
#if defined(TINYDRIVERS_DEBUG) && !defined(TINY_QMAKE_BUILD)
|
||||
driverBasenameRaw % 'd'_L1, // TinyMySqld.so
|
||||
driverBasenameRaw + 'd'_L1, // TinyMySqld.so
|
||||
#endif
|
||||
/* As the last, try to load from the raw basename without any postfixes,
|
||||
we don't use this but it can be helpful in some situations. */
|
||||
@@ -163,22 +163,22 @@ namespace
|
||||
/*! Get the MySQL driver shared library basename on MSYS2/MinGW. */
|
||||
inline QStringList getDriverBasenameMinGW(const QString &driverBasenameRaw)
|
||||
{
|
||||
static auto versionMajor = QString::number(TINYDRIVERS_VERSION_MAJOR);
|
||||
static const auto versionMajor = QString::number(TINYDRIVERS_VERSION_MAJOR);
|
||||
|
||||
// qmake build doesn't prepend lib for shared libraries on MSYS2
|
||||
#ifdef TINY_QMAKE_BUILD
|
||||
static const auto driverBasename = driverBasenameRaw;
|
||||
#else
|
||||
static const auto driverBasename = u"lib"_s % driverBasenameRaw;
|
||||
static const auto driverBasenameVersion = driverBasename % versionMajor;
|
||||
static const auto driverBasename = u"lib"_s + driverBasenameRaw;
|
||||
static const auto driverBasenameVersion = driverBasename + versionMajor;
|
||||
#endif
|
||||
static const auto driverBasenameRawVersion = driverBasenameRaw % versionMajor;
|
||||
static const auto driverBasenameRawVersion = driverBasenameRaw + versionMajor;
|
||||
|
||||
return {
|
||||
// CMake builds only (or any other build system that prepends lib prefix)
|
||||
#ifndef TINY_QMAKE_BUILD
|
||||
# ifdef TINYDRIVERS_DEBUG
|
||||
driverBasenameVersion % 'd'_L1, // libTinyMySql0d.dll
|
||||
driverBasenameVersion + 'd'_L1, // libTinyMySql0d.dll
|
||||
# endif
|
||||
driverBasenameVersion, // libTinyMySql0.dll
|
||||
driverBasename, // libTinyMySql.dll
|
||||
@@ -186,7 +186,7 @@ namespace
|
||||
// Also, try all other combinations without the lib prefix
|
||||
// qmake build doesn't support appending d after the basename for Debug builds
|
||||
#if defined(TINYDRIVERS_DEBUG) && !defined(TINY_QMAKE_BUILD)
|
||||
driverBasenameRawVersion % 'd'_L1,
|
||||
driverBasenameRawVersion + 'd'_L1,
|
||||
#endif
|
||||
driverBasenameRawVersion,
|
||||
/* As the last, try to load from the raw basename without any postfixes,
|
||||
@@ -321,7 +321,8 @@ QStringList SqlDriverFactoryPrivate::sqlDriverPaths() const
|
||||
|
||||
const auto envTinyPluginPath = qEnvironmentVariable("TINY_PLUGIN_PATH");
|
||||
const auto hasTinyPluginPaths = !envTinyPluginPath.isEmpty();
|
||||
const auto isTinyDriversInBuildTree = this->isTinyDriversInBuildTree();
|
||||
const auto isTinyDriversInBuildTree = SqlDriverFactoryPrivate::
|
||||
isTinyDriversInBuildTree();
|
||||
|
||||
constexpr static auto listSeparator = QDir::listSeparator();
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ namespace Orm::Drivers::MySql
|
||||
/*! Default constructor. */
|
||||
MySqlDriver();
|
||||
/*! Virtual destructor. */
|
||||
inline ~MySqlDriver() final = default;
|
||||
~MySqlDriver() final = default;
|
||||
|
||||
/*! Open the database connection using the given values. */
|
||||
bool open(const QString &database, const QString &username,
|
||||
|
||||
@@ -20,7 +20,7 @@ namespace Orm::Drivers::MySql
|
||||
/*! Default constructor. */
|
||||
inline MySqlDriverPrivate() noexcept;
|
||||
/*! Virtual destructor. */
|
||||
inline ~MySqlDriverPrivate() final = default;
|
||||
~MySqlDriverPrivate() final = default;
|
||||
|
||||
/* open() */
|
||||
struct SetConnectionOptionsResult;
|
||||
@@ -59,7 +59,7 @@ namespace Orm::Drivers::MySql
|
||||
/*! MYSQL handler. */
|
||||
MYSQL *mysql = nullptr;
|
||||
/*! The currently selected default database name. */
|
||||
QString databaseName {};
|
||||
QString databaseName;
|
||||
|
||||
private:
|
||||
/* open() */
|
||||
|
||||
@@ -37,7 +37,7 @@ namespace Orm::Drivers::MySql
|
||||
{
|
||||
/* Common for both */
|
||||
/*! Field metatype. */
|
||||
QMetaType metaType {};
|
||||
QMetaType metaType;
|
||||
/*! Field metadata. */
|
||||
const MYSQL_FIELD *myField = nullptr; // Returned by mysql_fetch_field()
|
||||
|
||||
@@ -91,7 +91,7 @@ namespace Orm::Drivers::MySql
|
||||
/* Data members */
|
||||
/* Common for both */
|
||||
/*! Fields for the currently obtained record/row. */
|
||||
ResultFieldsType resultFields {};
|
||||
ResultFieldsType resultFields;
|
||||
|
||||
/* Normal queries */
|
||||
/*! Result set handle (from the mysql_store_result()). */
|
||||
|
||||
@@ -158,7 +158,7 @@ void MySqlDriverPrivate::mysqlSelectDb(const QString &database)
|
||||
{
|
||||
// Nothing to do
|
||||
if (database.isEmpty())
|
||||
return databaseName.clear(); // clazy:exclude=returning-void-expression
|
||||
return databaseName.clear(); // NOLINT(readability-avoid-return-with-void-value) clazy:exclude=returning-void-expression
|
||||
|
||||
if (mysql_select_db(mysql, database.toUtf8().constData()) == 0) {
|
||||
databaseName = database;
|
||||
|
||||
Reference in New Issue
Block a user