![]() |
Qt 6.x
The Qt SDK
|
\inmodule QtCore More...
#include <qbytearraymatcher.h>
Public Member Functions | |
QByteArrayMatcher () | |
Constructs an empty byte array matcher that won't match anything. | |
QByteArrayMatcher (const QByteArray &pattern) | |
Constructs a byte array matcher that will search for pattern. | |
QByteArrayMatcher (QByteArrayView pattern) | |
QByteArrayMatcher (const char *pattern, qsizetype length=-1) | |
Constructs a byte array matcher from pattern. | |
QByteArrayMatcher (const QByteArrayMatcher &other) | |
Copies the other byte array matcher to this byte array matcher. | |
~QByteArrayMatcher () | |
Destroys the byte array matcher. | |
QByteArrayMatcher & | operator= (const QByteArrayMatcher &other) |
Assigns the other byte array matcher to this byte array matcher. | |
void | setPattern (const QByteArray &pattern) |
Sets the byte array that this byte array matcher will search for to pattern. | |
Q_WEAK_OVERLOAD qsizetype | indexIn (const QByteArray &ba, qsizetype from=0) const |
qsizetype | indexIn (const char *str, qsizetype len, qsizetype from=0) const |
Searches the char string str, which has length len, from byte position from (default 0, i.e. | |
qsizetype | indexIn (QByteArrayView data, qsizetype from=0) const |
QByteArray | pattern () const |
Returns the byte array pattern that this byte array matcher will search for. | |
\inmodule QtCore
The QByteArrayMatcher class holds a sequence of bytes that can be quickly matched in a byte array.
This class is useful when you have a sequence of bytes that you want to repeatedly match against some byte arrays (perhaps in a loop), or when you want to search for the same sequence of bytes multiple times in the same byte array. Using a matcher object and indexIn() is faster than matching a plain QByteArray with QByteArray::indexOf() if repeated matching takes place. This class offers no benefit if you are doing one-off byte array matches.
Create the QByteArrayMatcher with the QByteArray you want to search for. Then call indexIn() on the QByteArray that you want to search.
Definition at line 18 of file qbytearraymatcher.h.
QByteArrayMatcher::QByteArrayMatcher | ( | ) |
Constructs an empty byte array matcher that won't match anything.
Call setPattern() to give it a pattern to match.
Definition at line 82 of file qbytearraymatcher.cpp.
|
explicit |
Constructs a byte array matcher that will search for pattern.
Call indexIn() to perform a search.
Definition at line 111 of file qbytearraymatcher.cpp.
References bm_init_skiptable().
|
inlineexplicit |
Constructs a byte array matcher that will search for pattern. Call indexIn() to perform a search.
Definition at line 23 of file qbytearraymatcher.h.
|
explicit |
Constructs a byte array matcher from pattern.
pattern has the given length. Call indexIn() to perform a search.
Definition at line 97 of file qbytearraymatcher.cpp.
References bm_init_skiptable(), pattern(), and qstrlen().
QByteArrayMatcher::QByteArrayMatcher | ( | const QByteArrayMatcher & | other | ) |
Copies the other byte array matcher to this byte array matcher.
Definition at line 134 of file qbytearraymatcher.cpp.
References operator=(), and other().
QByteArrayMatcher::~QByteArrayMatcher | ( | ) |
Destroys the byte array matcher.
Definition at line 143 of file qbytearraymatcher.cpp.
References Q_UNUSED.
Searches the char string str, which has length len, from byte position from (default 0, i.e.
from the first byte), for the byte array pattern() that was set in the constructor or in the most recent call to setPattern(). Returns the position where the pattern() matched in str, or -1 if no match was found.
Definition at line 179 of file qbytearraymatcher.cpp.
References bm_find(), and str.
|
inline |
Definition at line 38 of file qbytearraymatcher.h.
References ba.
qsizetype QByteArrayMatcher::indexIn | ( | QByteArrayView | data, |
qsizetype | from = 0 |
||
) | const |
Searches the byte array data, from byte position from (default 0, i.e. from the first byte), for the byte array pattern() that was set in the constructor or in the most recent call to setPattern(). Returns the position where the pattern() matched in data, or -1 if no match was found.
Definition at line 198 of file qbytearraymatcher.cpp.
References bm_find().
QByteArrayMatcher & QByteArrayMatcher::operator= | ( | const QByteArrayMatcher & | other | ) |
Assigns the other byte array matcher to this byte array matcher.
Definition at line 151 of file qbytearraymatcher.cpp.
References other().
Referenced by QByteArrayMatcher().
|
inline |
Returns the byte array pattern that this byte array matcher will search for.
Definition at line 43 of file qbytearraymatcher.h.
Referenced by QByteArrayMatcher(), and setPattern().
void QByteArrayMatcher::setPattern | ( | const QByteArray & | pattern | ) |
Sets the byte array that this byte array matcher will search for to pattern.
Definition at line 164 of file qbytearraymatcher.cpp.
References bm_init_skiptable(), pattern(), and QByteArray::size().
uint QByteArrayMatcher::dummy[256] |
Definition at line 59 of file qbytearraymatcher.h.
Data QByteArrayMatcher::p |
Definition at line 60 of file qbytearraymatcher.h.