diff options
author | Lars Knoll <[email protected]> | 2018-04-26 11:48:46 +0200 |
---|---|---|
committer | Lars Knoll <[email protected]> | 2018-05-02 14:20:25 +0000 |
commit | 7d46d7251032ea31f7e7dcef4855a0e5d669fed5 (patch) | |
tree | b5bf0d708874bd002f8db51fd16682ebd9992355 /src/qml/jsruntime/qv4arrayobject.cpp | |
parent | c7fe748850383c5afcc18acf5568be0badd95c93 (diff) |
Implement support for arguments[Symbol.iterator]
Change-Id: Ieb60e2d8f41c38146b588bc8cd225a2a567e0956
Reviewed-by: Simon Hausmann <[email protected]>
Diffstat (limited to 'src/qml/jsruntime/qv4arrayobject.cpp')
-rw-r--r-- | src/qml/jsruntime/qv4arrayobject.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/qml/jsruntime/qv4arrayobject.cpp b/src/qml/jsruntime/qv4arrayobject.cpp index 4dfe177c12..71ffc29fca 100644 --- a/src/qml/jsruntime/qv4arrayobject.cpp +++ b/src/qml/jsruntime/qv4arrayobject.cpp @@ -120,8 +120,11 @@ void ArrayPrototype::init(ExecutionEngine *engine, Object *ctor) defineDefaultProperty(QStringLiteral("filter"), method_filter, 1); defineDefaultProperty(QStringLiteral("reduce"), method_reduce, 1); defineDefaultProperty(QStringLiteral("reduceRight"), method_reduceRight, 1); - defineDefaultProperty(QStringLiteral("values"), method_values, 0); - defineDefaultProperty(engine->symbol_iterator(), method_values, 0); + ScopedString valuesString(scope, engine->newIdentifier(QStringLiteral("values"))); + ScopedObject values(scope, FunctionObject::createBuiltinFunction(engine, valuesString, method_values, 0)); + engine->jsObjects[ExecutionEngine::ArrayProtoValues] = values; + defineDefaultProperty(QStringLiteral("values"), values); + defineDefaultProperty(engine->symbol_iterator(), values); } ReturnedValue ArrayPrototype::method_isArray(const FunctionObject *, const Value *, const Value *argv, int argc) |