Repository URL to install this package:
|
Version:
5.15.7 ▾
|
// qcborstream.sip generated by MetaSIP
//
// This file is part of the QtCore Python extension module.
//
// Copyright (c) 2022 Riverbank Computing Limited <info@riverbankcomputing.com>
//
// This file is part of PyQt5.
//
// This file may be used under the terms of the GNU General Public License
// version 3.0 as published by the Free Software Foundation and appearing in
// the file LICENSE included in the packaging of this file. Please review the
// following information to ensure the GNU General Public License version 3.0
// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
//
// If you do not wish to use this file under the terms of the GPL version 3.0
// then you may purchase a commercial license. For more information contact
// info@riverbankcomputing.com.
//
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
%If (Qt_5_12_0 -)
class QCborStreamWriter
{
%TypeHeaderCode
#include <qcborstream.h>
%End
public:
explicit QCborStreamWriter(QIODevice *device);
explicit QCborStreamWriter(QByteArray *data);
~QCborStreamWriter();
void setDevice(QIODevice *device);
QIODevice *device() const;
void append(QCborSimpleType st);
void append(QCborKnownTags tag);
void append(const QString &str) [void (QStringView str)];
void append(const QByteArray &ba);
void append(bool b /Constrained/);
void append(double d /Constrained/);
%MethodCode
// Use the smallest type without losing precision.
qfloat16 a0_16 = a0;
if (qIsNaN(a0) || a0_16 == a0)
{
sipCpp->append(a0_16);
}
else
{
float a0_float = a0;
if (a0_float == a0)
sipCpp->append(a0_float);
else
sipCpp->append(a0);
}
%End
void append(SIP_PYOBJECT /TypeHint="int"/);
%MethodCode
#if PY_MAJOR_VERSION < 3
if (PyLong_Check(a0))
#endif
{
static PyObject *zero = 0;
if (!zero)
zero = PyLong_FromLong(0);
if (PyObject_RichCompareBool(a0, zero, Py_LT) > 0)
{
PyErr_Clear();
qint64 val = sipLong_AsLongLong(a0);
if (PyErr_Occurred())
sipError = sipErrorFail;
else
sipCpp->append(val);
}
else
{
PyErr_Clear();
quint64 val = sipLong_AsUnsignedLongLong(a0);
if (PyErr_Occurred())
sipError = sipErrorFail;
else
sipCpp->append(val);
}
}
#if PY_MAJOR_VERSION < 3
else if (PyInt_Check(a0))
{
PyErr_Clear();
long val = PyInt_AsLong(a0);
if (PyErr_Occurred())
sipError = sipErrorFail;
else if (val < 0)
sipCpp->append((qint64)val);
else
sipCpp->append((quint64)val);
}
#endif
%End
void appendNull();
void appendUndefined();
void startArray();
void startArray(quint64 count);
bool endArray();
void startMap();
void startMap(quint64 count);
bool endMap();
private:
QCborStreamWriter(const QCborStreamWriter &);
};
%End
%If (Qt_5_12_0 -)
class QCborStreamReader
{
%TypeHeaderCode
#include <qcborstream.h>
%End
public:
enum Type
{
UnsignedInteger,
NegativeInteger,
ByteString,
ByteArray,
TextString,
String,
Array,
Map,
Tag,
SimpleType,
HalfFloat,
Float16,
Float,
Double,
Invalid,
};
enum StringResultCode
{
EndOfString,
Ok,
Error,
};
QCborStreamReader();
explicit QCborStreamReader(const QByteArray &data);
explicit QCborStreamReader(QIODevice *device);
~QCborStreamReader();
void setDevice(QIODevice *device);
QIODevice *device() const;
void addData(const QByteArray &data);
void reparse();
void clear();
void reset();
QCborError lastError();
qint64 currentOffset() const;
bool isValid() const;
int containerDepth() const;
QCborStreamReader::Type parentContainerType() const;
bool hasNext() const;
bool next(int maxRecursion = 10000);
QCborStreamReader::Type type() const;
bool isUnsignedInteger() const;
bool isNegativeInteger() const;
bool isInteger() const;
bool isByteArray() const;
bool isString() const;
bool isArray() const;
bool isMap() const;
bool isTag() const;
bool isSimpleType() const;
bool isFloat16() const;
bool isFloat() const;
bool isDouble() const;
bool isInvalid() const;
bool isSimpleType(QCborSimpleType st) const;
bool isFalse() const;
bool isTrue() const;
bool isBool() const;
bool isNull() const;
bool isUndefined() const;
bool isLengthKnown() const;
quint64 length() const /__len__/;
bool isContainer() const;
bool enterContainer();
bool leaveContainer();
SIP_PYTUPLE readString() /TypeHint="Tuple[str, QCborStreamReader.StringResultCode]"/;
%MethodCode
QCborStreamReader::StringResult<QString> res = sipCpp->readString();
QString *qs = new QString;
if (res.status != QCborStreamReader::Error)
*qs = res.data;
sipRes = sipBuildResult(NULL, "NF", qs, sipType_QString, NULL, res.status, sipType_QCborStreamReader_StringResultCode);
%End
SIP_PYTUPLE readByteArray() /TypeHint="Tuple[QByteArray, QCborStreamReader.StringResultCode]"/;
%MethodCode
QCborStreamReader::StringResult<QByteArray> res = sipCpp->readByteArray();
QByteArray *qba = new QByteArray;
if (res.status != QCborStreamReader::Error)
*qba = res.data;
sipRes = sipBuildResult(NULL, "NF", qba, sipType_QByteArray, NULL, res.status, sipType_QCborStreamReader_StringResultCode);
%End
bool toBool() const;
quint64 toUnsignedInteger() const;
QCborSimpleType toSimpleType() const;
double toDouble() const;
qint64 toInteger() const;
private:
QCborStreamReader(const QCborStreamReader &);
};
%End