diff options
author | Lars Knoll <lars.knoll@theqtcompany.com> | 2015-01-01 15:24:33 +0100 |
---|---|---|
committer | Lars Knoll <lars.knoll@digia.com> | 2015-01-09 10:27:52 +0100 |
commit | 8a779f65ae3fb830415b9f39d803be57b7f56d50 (patch) | |
tree | 09f6ce75d96fd5f6831893557f192c48c7e478d8 /src/qml/jsapi/qjsvalue.cpp | |
parent | 2569b795c527ea4c875e68cfeca382d5a9d128af (diff) |
This method is only used one place, so inline it there
Change-Id: Ia8b75965208c9687163ddaf982c4081c1ee504d4
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsapi/qjsvalue.cpp')
-rw-r--r-- | src/qml/jsapi/qjsvalue.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/qml/jsapi/qjsvalue.cpp b/src/qml/jsapi/qjsvalue.cpp index 4cfae02e9a..11b7dad8eb 100644 --- a/src/qml/jsapi/qjsvalue.cpp +++ b/src/qml/jsapi/qjsvalue.cpp @@ -516,7 +516,22 @@ QVariant QJSValue::toVariant() const if (d->value.isEmpty()) return d->unboundData; - return QV4::VariantObject::toVariant(d->value); + if (d->value.asObject()) + return QV8Engine::toVariant(d->value.engine(), d->value, /*typeHint*/ -1, /*createJSValueForObjects*/ false); + + if (d->value.isString()) + return QVariant(d->value.stringValue()->toQString()); + if (d->value.isBoolean()) + return QVariant(d->value.booleanValue()); + if (d->value.isNumber()) { + if (d->value.isInt32()) + return QVariant(d->value.integerValue()); + return QVariant(d->value.asDouble()); + } + if (d->value.isNull()) + return QVariant(QMetaType::VoidStar, 0); + Q_ASSERT(d->value.isUndefined()); + return QVariant(); } /*! |