Add QByteArray::insert(qsizetype, const QByteArray &)
For consistency with append and prepend we should have an overload for insert() as well. This also enables insert() to be used with QStringBuilder, i.e. qba.insert(2, qba2 + "abc"). Because simply adding a const QByteArray & overload causes ambiguity with QByteArrayView we also add a const char * overload. Add some extra test-cases. Two for QByteArrayView since it's not directly tested anymore. One for inserting self directly. Change-Id: Ieb43a6a7d1afbb498bc89c690908d7f0faa94687 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>bb10
parent
059ca16aa0
commit
bbadd1b5c1
|
|
@ -1954,6 +1954,24 @@ QByteArray &QByteArray::insert(qsizetype i, QByteArrayView data)
|
|||
return *this;
|
||||
}
|
||||
|
||||
/*!
|
||||
\fn QByteArray &QByteArray::insert(qsizetype i, const QByteArray &data)
|
||||
Inserts \a data at index position \a i and returns a
|
||||
reference to this byte array.
|
||||
|
||||
\sa append(), prepend(), replace(), remove()
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QByteArray &QByteArray::insert(qsizetype i, const char *s)
|
||||
Inserts \a s at index position \a i and returns a
|
||||
reference to this byte array.
|
||||
|
||||
The function is equivalent to \c{insert(i, QByteArrayView(s))}
|
||||
|
||||
\sa append(), prepend(), replace(), remove()
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QByteArray &QByteArray::insert(qsizetype i, const char *data, qsizetype len)
|
||||
\overload
|
||||
|
|
|
|||
|
|
@ -298,6 +298,10 @@ public:
|
|||
{ return insert(size(), a); }
|
||||
|
||||
QByteArray &insert(qsizetype i, QByteArrayView data);
|
||||
inline QByteArray &insert(qsizetype i, const char *s)
|
||||
{ return insert(i, QByteArrayView(s)); }
|
||||
inline QByteArray &insert(qsizetype i, const QByteArray &data)
|
||||
{ return insert(i, QByteArrayView(data)); }
|
||||
QByteArray &insert(qsizetype i, qsizetype count, char c);
|
||||
QByteArray &insert(qsizetype i, char c)
|
||||
{ return insert(i, QByteArrayView(&c, 1)); }
|
||||
|
|
|
|||
|
|
@ -946,6 +946,18 @@ void tst_QByteArray::insert()
|
|||
ba = "ab";
|
||||
QCOMPARE(ba.insert(1, "\0X\0", 3), QByteArray::fromRawData("a\0X\0b", 5));
|
||||
QCOMPARE(ba.size(), 5);
|
||||
|
||||
ba = "Hello World";
|
||||
QCOMPARE(ba.insert(5, QByteArrayView(",")), QByteArray("Hello, World"));
|
||||
QCOMPARE(ba.size(), 12);
|
||||
|
||||
ba = "one";
|
||||
QCOMPARE(ba.insert(1, ba), QByteArray("oonene"));
|
||||
QCOMPARE(ba.size(), 6);
|
||||
|
||||
ba = "one";
|
||||
QCOMPARE(ba.insert(1, QByteArrayView(ba)), QByteArray("oonene"));
|
||||
QCOMPARE(ba.size(), 6);
|
||||
}
|
||||
|
||||
void tst_QByteArray::insertExtended_data()
|
||||
|
|
|
|||
Loading…
Reference in New Issue