summaryrefslogtreecommitdiffstats
path: root/src/script/api/qscriptstring.cpp
diff options
context:
space:
mode:
authorGareth Stockwell <ext-gareth.stockwell@nokia.com>2009-11-03 13:42:29 (GMT)
committerGareth Stockwell <ext-gareth.stockwell@nokia.com>2009-11-03 13:42:29 (GMT)
commit63f2cc8d9526d3fd8a64e62be2a469bf0eee54f0 (patch)
tree7e6724964ceb6e38f478074780f06df0bdd11dbd /src/script/api/qscriptstring.cpp
parent6a89291da7e1322ad81c4939cc9d69db01957a4c (diff)
parentdc89c842779f87ce69882ba54fa8d5bb79e0edbd (diff)
downloadQt-63f2cc8d9526d3fd8a64e62be2a469bf0eee54f0.zip
Qt-63f2cc8d9526d3fd8a64e62be2a469bf0eee54f0.tar.gz
Qt-63f2cc8d9526d3fd8a64e62be2a469bf0eee54f0.tar.bz2
Merge branch '4.6' into mmfphonon
Diffstat (limited to 'src/script/api/qscriptstring.cpp')
-rw-r--r--src/script/api/qscriptstring.cpp32
1 files changed, 30 insertions, 2 deletions
diff --git a/src/script/api/qscriptstring.cpp b/src/script/api/qscriptstring.cpp
index 2fb157f..10fccd0 100644
--- a/src/script/api/qscriptstring.cpp
+++ b/src/script/api/qscriptstring.cpp
@@ -68,6 +68,10 @@ QT_BEGIN_NAMESPACE
Call the toString() function to obtain the string that a
QScriptString represents.
+
+ Call the toArrayIndex() function to convert a QScriptString to an
+ array index. This is useful when using QScriptClass to implement
+ array-like objects.
*/
/*!
@@ -139,8 +143,7 @@ QScriptString &QScriptString::operator=(const QScriptString &other)
*/
bool QScriptString::isValid() const
{
- Q_D(const QScriptString);
- return (d && d->engine);
+ return QScriptStringPrivate::isValid(*this);
}
/*!
@@ -165,6 +168,31 @@ bool QScriptString::operator!=(const QScriptString &other) const
}
/*!
+ \since 4.6
+
+ Attempts to convert this QScriptString to a QtScript array index,
+ and returns the result.
+
+ If a conversion error occurs, *\a{ok} is set to false; otherwise
+ *\a{ok} is set to true.
+*/
+quint32 QScriptString::toArrayIndex(bool *ok) const
+{
+ Q_D(const QScriptString);
+ if (!d) {
+ if (ok)
+ *ok = false;
+ return -1;
+ }
+ bool tmp;
+ bool *okok = ok ? ok : &tmp;
+ quint32 result = d->identifier.toArrayIndex(okok);
+ if (!*okok)
+ result = -1;
+ return result;
+}
+
+/*!
Returns the string that this QScriptString represents, or a
null string if this QScriptString is not valid.