Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include "qsql_ibase_p.h"
#include <QtCore/qcoreapplication.h>
#include <QtCore/qdatetime.h>
#include <QtCore/qtimezone.h>
#include <QtCore/qdeadlinetimer.h>
#include <QtCore/qdebug.h>
#include <QtCore/qlist.h>
#include <QtCore/qloggingcategory.h>
#include <QtCore/qmap.h>
#include <QtCore/qmutex.h>
#include <QtCore/qvariant.h>
#include <QtCore/qvarlengtharray.h>
#include <QtSql/qsqlerror.h>
#include <QtSql/qsqlfield.h>
#include <QtSql/qsqlindex.h>
#include <QtSql/qsqlquery.h>
#include <QtSql/private/qsqlcachedresult_p.h>
#include <QtSql/private/qsqldriver_p.h>
#include <stdlib.h>
#include <limits.h>
#include <math.h>
#include <mutex>
#include "moc_qsql_ibase_p.cpp"
Go to the source code of this file.
Classes | |
struct | QIBaseEventBuffer |
class | QIBaseDriverPrivate |
class | QIBaseResult |
class | QIBaseResultPrivate |
Macros | |
#define | FBVERSION SQL_DIALECT_V6 |
#define | SQLDA_CURRENT_VERSION SQLDA_VERSION1 |
#define | blr_boolean_dtype blr_bool |
Typedefs | |
typedef QMap< void *, QIBaseDriver * > | QIBaseBufferDriverMap |
Functions | |
static bool | getIBaseError (QString &msg, const ISC_STATUS *status, ISC_LONG &sqlcode) |
static void | createDA (XSQLDA *&sqlda) |
static void | enlargeDA (XSQLDA *&sqlda, int n) |
static void | initDA (XSQLDA *sqlda) |
static void | delDA (XSQLDA *&sqlda) |
static QMetaType::Type | qIBaseTypeName (int iType, bool hasScale) |
static QMetaType::Type | qIBaseTypeName2 (int iType, bool hasScale) |
static ISC_TIMESTAMP | toTimeStamp (const QDateTime &dt) |
static QDateTime | fromTimeStamp (char *buffer) |
static ISC_TIME | toTime (QTime t) |
static QTime | fromTime (char *buffer) |
static ISC_DATE | toDate (QDate t) |
static QDate | fromDate (char *buffer) |
Q_GLOBAL_STATIC (QMutex, qMutex) | |
static void | qFreeEventBuffer (QIBaseEventBuffer *eBuffer) |
template<typename T > | |
static QList< QVariant > | toList (char **buf, int count) |
static char * | readArrayBuffer (QList< QVariant > &list, char *buffer, short curDim, short *numElements, ISC_ARRAY_DESC *arrayDesc) |
template<typename T > | |
static char * | fillList (char *buffer, const QList< QVariant > &list, T *=nullptr) |
template<> | |
char * | fillList< float > (char *buffer, const QList< QVariant > &list, float *) |
static char * | qFillBufferWithString (char *buffer, const QString &string, short buflen, bool varying, bool array) |
static char * | createArrayBuffer (char *buffer, const QList< QVariant > &list, QMetaType::Type type, short curDim, ISC_ARRAY_DESC *arrayDesc, QString &error) |
static ISC_EVENT_CALLBACK | qEventCallback (char *result, ISC_USHORT length, const ISC_UCHAR *updated) |
Variables | |
constexpr qsizetype | QIBaseChunkSize = SHRT_MAX / 2 |
#define blr_boolean_dtype blr_bool |
Definition at line 41 of file qsql_ibase.cpp.
Referenced by qIBaseTypeName(), and readArrayBuffer().
#define FBVERSION SQL_DIALECT_V6 |
Definition at line 33 of file qsql_ibase.cpp.
Referenced by QIBaseResult::exec(), QIBaseResult::gotoNext(), and QIBaseResult::prepare().
#define SQLDA_CURRENT_VERSION SQLDA_VERSION1 |
Definition at line 36 of file qsql_ibase.cpp.
Referenced by createDA(), and enlargeDA().
typedef QMap<void *, QIBaseDriver *> QIBaseBufferDriverMap |
Definition at line 378 of file qsql_ibase.cpp.
|
static |
Definition at line 770 of file qsql_ibase.cpp.
References createArrayBuffer(), elements, error, fillList< float >(), list, qFillBufferWithString(), QList< T >::size(), toDate(), toTime(), and toTimeStamp().
Referenced by createArrayBuffer(), and QIBaseResultPrivate::writeArray().
|
static |
Definition at line 70 of file qsql_ibase.cpp.
References SQLDA_CURRENT_VERSION.
Referenced by QIBaseResult::prepare().
|
static |
Definition at line 133 of file qsql_ibase.cpp.
References i.
Referenced by QIBaseResultPrivate::cleanup(), and QIBaseResult::exec().
|
static |
Definition at line 81 of file qsql_ibase.cpp.
References SQLDA_CURRENT_VERSION.
Referenced by QIBaseResult::prepare().
|
static |
Definition at line 724 of file qsql_ibase.cpp.
References list.
Definition at line 735 of file qsql_ibase.cpp.
References list.
Referenced by createArrayBuffer().
|
static |
Definition at line 300 of file qsql_ibase.cpp.
References QDate::addDays(), and d.
Referenced by QIBaseResult::gotoNext(), and readArrayBuffer().
|
static |
Definition at line 281 of file qsql_ibase.cpp.
Referenced by QIBaseResult::gotoNext(), and readArrayBuffer().
|
static |
Definition at line 228 of file qsql_ibase.cpp.
References QDate::addDays(), and d.
Referenced by QIBaseResult::gotoNext(), and readArrayBuffer().
|
static |
Definition at line 54 of file qsql_ibase.cpp.
References QString::clear(), QString::fromUtf8(), and QString::isEmpty().
Referenced by QIBaseResult::exec(), QIBaseDriverPrivate::isError(), and QIBaseResultPrivate::isError().
|
static |
Definition at line 91 of file qsql_ibase.cpp.
Referenced by QIBaseResult::prepare().
Q_GLOBAL_STATIC | ( | QMutex | , |
qMutex | ) |
|
static |
Definition at line 1837 of file qsql_ibase.cpp.
References QMetaObject::invokeMethod(), Q_ARG, and Qt::QueuedConnection.
Referenced by QIBaseDriver::subscribeToNotification().
|
static |
Definition at line 746 of file qsql_ibase.cpp.
References QString::data(), QString::leftJustified(), QString::length(), str, and QString::toUtf8().
Referenced by createArrayBuffer(), and QIBaseResult::exec().
|
static |
Definition at line 382 of file qsql_ibase.cpp.
Referenced by QIBaseDriver::close(), QIBaseDriver::subscribeToNotification(), and QIBaseDriver::unsubscribeFromNotification().
|
static |
Definition at line 145 of file qsql_ibase.cpp.
References blr_boolean_dtype, qCWarning, and QMetaType::UnknownType.
Referenced by QIBaseDriver::primaryIndex(), QIBaseDriver::record(), and QIBaseResultPrivate::writeArray().
|
static |
Definition at line 182 of file qsql_ibase.cpp.
References qCWarning, and QMetaType::UnknownType.
Referenced by QIBaseResult::gotoNext(), and QIBaseResult::record().
|
static |
Definition at line 589 of file qsql_ibase.cpp.
References QList< T >::append(), blr_boolean_dtype, fromDate(), fromTime(), fromTimeStamp(), QString::fromUtf8(), i, list, o, Q_FALLTHROUGH, and readArrayBuffer().
Referenced by QIBaseResultPrivate::fetchArray(), and readArrayBuffer().
|
static |
Definition at line 291 of file qsql_ibase.cpp.
References date, and QDate::daysTo().
Referenced by QDateTimePrivate::create(), createArrayBuffer(), and QIBaseResult::exec().
Definition at line 579 of file qsql_ibase.cpp.
References i.
Referenced by QAndroidStyle::Android9PatchDrawable::Android9PatchDrawable(), QSQLiteResult::execBatch(), QMimerSQLResult::execBatch(), QV4::ExecutionEngine::metaTypeFromJS(), and QTreeModel::sortItems().
|
static |
Definition at line 275 of file qsql_ibase.cpp.
Referenced by QDateTimePrivate::create(), createArrayBuffer(), and QIBaseResult::exec().
|
static |
Definition at line 218 of file qsql_ibase.cpp.
Referenced by createArrayBuffer(), and QIBaseResult::exec().
|
constexpr |
Definition at line 44 of file qsql_ibase.cpp.
Referenced by QIBaseResultPrivate::fetchBlob(), and QIBaseResultPrivate::writeBlob().