diff options
author | Lars Knoll <lars.knoll@qt.io> | 2018-08-26 15:07:50 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2018-08-28 21:45:45 +0000 |
commit | 464b878b973710077b2b92b1682d6f38c83554dd (patch) | |
tree | 2577a70c9809bebc3776a0e11422badfdd310c90 /src/qml/jsruntime/qv4engine.cpp | |
parent | bead103138c0d9dff3c9f927c9c4e2f44ee7db4c (diff) |
Implement support for WeakMap
Change-Id: Id23e80fe5918ba7dc897568123bf3db4d35e9092
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4engine.cpp')
-rw-r--r-- | src/qml/jsruntime/qv4engine.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/qml/jsruntime/qv4engine.cpp b/src/qml/jsruntime/qv4engine.cpp index d6cfb1dcc1..7087e49b30 100644 --- a/src/qml/jsruntime/qv4engine.cpp +++ b/src/qml/jsruntime/qv4engine.cpp @@ -485,6 +485,10 @@ ExecutionEngine::ExecutionEngine(QJSEngine *jsEngine) sequencePrototype()->cast<SequencePrototype>()->init(); #endif + jsObjects[WeakMap_Ctor] = memoryManager->allocate<WeakMapCtor>(global); + jsObjects[WeakMapProto] = memoryManager->allocate<WeakMapPrototype>(); + static_cast<WeakMapPrototype *>(weakMapPrototype())->init(this, weakMapCtor()); + jsObjects[Map_Ctor] = memoryManager->allocate<MapCtor>(global); jsObjects[MapProto] = memoryManager->allocate<MapPrototype>(); static_cast<MapPrototype *>(mapPrototype())->init(this, mapCtor()); @@ -548,6 +552,7 @@ ExecutionEngine::ExecutionEngine(QJSEngine *jsEngine) globalObject->defineDefaultProperty(QStringLiteral("ArrayBuffer"), *arrayBufferCtor()); globalObject->defineDefaultProperty(QStringLiteral("DataView"), *dataViewCtor()); globalObject->defineDefaultProperty(QStringLiteral("Set"), *setCtor()); + globalObject->defineDefaultProperty(QStringLiteral("WeakMap"), *weakMapCtor()); globalObject->defineDefaultProperty(QStringLiteral("Map"), *mapCtor()); for (int i = 0; i < NTypedArrayTypes; ++i) |