make QString::fromLatin1 partially inline

This allows us to benefit from compile time optimizations when calling
strlen()

Change-Id: If6694117e613a012fce97f8664e6b43005d255de
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
Harald Fernengel 2011-12-20 13:42:17 +01:00 committed by Qt by Nokia
parent b8ac9da63a
commit 2532ddc48b
2 changed files with 6 additions and 6 deletions

View File

@ -3818,7 +3818,7 @@ QString::Data *QString::fromAscii_helper(const char *str, int size)
return fromLatin1_helper(str, size);
}
/*!
/*! \fn QString QString::fromLatin1(const char *str, int size)
Returns a QString initialized with the first \a size characters
of the Latin-1 string \a str.
@ -3827,10 +3827,6 @@ QString::Data *QString::fromAscii_helper(const char *str, int size)
\sa toLatin1(), fromAscii(), fromUtf8(), fromLocal8Bit()
*/
QString QString::fromLatin1(const char *str, int size)
{
return QString(fromLatin1_helper(str, size), 0);
}
/*!

View File

@ -408,7 +408,11 @@ public:
QVector<uint> toUcs4() const Q_REQUIRED_RESULT;
static QString fromAscii(const char *, int size = -1);
static QString fromLatin1(const char *, int size = -1);
static inline QString fromLatin1(const char *str, int size = -1)
{
// make this inline so we can benefit from strlen() compile time optimization
return QString(fromLatin1_helper(str, (str && size == -1) ? int(strlen(str)) : size), 0);
}
static QString fromUtf8(const char *, int size = -1);
static QString fromLocal8Bit(const char *, int size = -1);
static QString fromUtf16(const ushort *, int size = -1);