Improve "split to byte array views" function

1. Utilize string matcher
2. Remove split behavior parameter
   Previously `KeepEmptyParts` behavior doesn't match Qt's
   implementation and since our codebase doesn't really make use of it,
   we can just remove the parameter.
3. Add tests.

PR #22352.
This commit is contained in:
Chocobo1 2025-03-03 21:42:03 +08:00 committed by GitHub
parent 96295adc08
commit 62a7fd86d6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 67 additions and 19 deletions

View file

@ -37,8 +37,8 @@ class QByteArrayView;
namespace Utils::ByteArray
{
// Mimic QStringView(in).split(sep, behavior)
QList<QByteArrayView> splitToViews(QByteArrayView in, QByteArrayView sep, Qt::SplitBehavior behavior = Qt::KeepEmptyParts);
// Inspired by QStringView(in).split(sep, Qt::SkipEmptyParts)
QList<QByteArrayView> splitToViews(QByteArrayView in, QByteArrayView sep);
QByteArray asQByteArray(QByteArrayView view);
QByteArray toBase32(const QByteArray &in);