aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4vtable_p.h
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2018-06-25 23:18:33 +0200
committerLars Knoll <lars.knoll@qt.io>2018-07-03 08:08:35 +0000
commit61440411a979c7c317bafccfbf5201d969819a06 (patch)
tree6c5825e21e75587121351bc612a76a7af81ef7be /src/qml/jsruntime/qv4vtable_p.h
parent2aabdd187aae8a953cfcebac8f6c1ba7b19a0727 (diff)
Prefix vtable methods with virtual
Turns out that the overloading of vtable methods and regular ones is problematic in some cases. So let's rather make it explicit which methods are part of the vtable, and which aren't. Change-Id: Ifee32a26104d30f3c82bca8b5a9cdea2d4f4f526 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4vtable_p.h')
-rw-r--r--src/qml/jsruntime/qv4vtable_p.h72
1 files changed, 36 insertions, 36 deletions
diff --git a/src/qml/jsruntime/qv4vtable_p.h b/src/qml/jsruntime/qv4vtable_p.h
index 2acc868d3e..daf971e581 100644
--- a/src/qml/jsruntime/qv4vtable_p.h
+++ b/src/qml/jsruntime/qv4vtable_p.h
@@ -118,25 +118,25 @@ struct VTable
struct VTableBase {
protected:
- static constexpr VTable::Destroy destroy = nullptr;
- static constexpr VTable::IsEqualTo isEqualTo = nullptr;
-
- static constexpr VTable::Get get = nullptr;
- static constexpr VTable::Put put = nullptr;
- static constexpr VTable::DeleteProperty deleteProperty = nullptr;
- static constexpr VTable::HasProperty hasProperty = nullptr;
- static constexpr VTable::GetOwnProperty getOwnProperty = nullptr;
- static constexpr VTable::DefineOwnProperty defineOwnProperty = nullptr;
- static constexpr VTable::IsExtensible isExtensible = nullptr;
- static constexpr VTable::PreventExtensions preventExtensions = nullptr;
- static constexpr VTable::GetPrototypeOf getPrototypeOf = nullptr;
- static constexpr VTable::SetPrototypeOf setPrototypeOf = nullptr;
- static constexpr VTable::GetLength getLength = nullptr;
- static constexpr VTable::AdvanceIterator advanceIterator = nullptr;
- static constexpr VTable::InstanceOf instanceOf = nullptr;
-
- static constexpr VTable::Call call = nullptr;
- static constexpr VTable::CallAsConstructor callAsConstructor = nullptr;
+ static constexpr VTable::Destroy virtualDestroy = nullptr;
+ static constexpr VTable::IsEqualTo virtualIsEqualTo = nullptr;
+
+ static constexpr VTable::Get virtualGet = nullptr;
+ static constexpr VTable::Put virtualPut = nullptr;
+ static constexpr VTable::DeleteProperty virtualDeleteProperty = nullptr;
+ static constexpr VTable::HasProperty virtualHasProperty = nullptr;
+ static constexpr VTable::GetOwnProperty virtualGetOwnProperty = nullptr;
+ static constexpr VTable::DefineOwnProperty virtualDefineOwnProperty = nullptr;
+ static constexpr VTable::IsExtensible virtualIsExtensible = nullptr;
+ static constexpr VTable::PreventExtensions virtualPreventExtensions = nullptr;
+ static constexpr VTable::GetPrototypeOf virtualGetPrototypeOf = nullptr;
+ static constexpr VTable::SetPrototypeOf virtualSetPrototypeOf = nullptr;
+ static constexpr VTable::GetLength virtualGetLength = nullptr;
+ static constexpr VTable::AdvanceIterator virtualAdvanceIterator = nullptr;
+ static constexpr VTable::InstanceOf virtualInstanceOf = nullptr;
+
+ static constexpr VTable::Call virtualCall = nullptr;
+ static constexpr VTable::CallAsConstructor virtualCallAsConstructor = nullptr;
};
#define DEFINE_MANAGED_VTABLE_INT(classname, parentVTable) \
@@ -156,26 +156,26 @@ protected:
{ 0, 0, 0, 0 }, \
#classname, \
\
- classname::destroy, \
+ classname::virtualDestroy, \
classname::Data::markObjects, \
- classname::isEqualTo, \
+ classname::virtualIsEqualTo, \
\
- classname::get, \
- classname::put, \
- classname::deleteProperty, \
- classname::hasProperty, \
- classname::getOwnProperty, \
- classname::defineOwnProperty, \
- classname::isExtensible, \
- classname::preventExtensions, \
- classname::getPrototypeOf, \
- classname::setPrototypeOf, \
- classname::getLength, \
- classname::advanceIterator, \
- classname::instanceOf, \
+ classname::virtualGet, \
+ classname::virtualPut, \
+ classname::virtualDeleteProperty, \
+ classname::virtualHasProperty, \
+ classname::virtualGetOwnProperty, \
+ classname::virtualDefineOwnProperty, \
+ classname::virtualIsExtensible, \
+ classname::virtualPreventExtensions, \
+ classname::virtualGetPrototypeOf, \
+ classname::virtualSetPrototypeOf, \
+ classname::virtualGetLength, \
+ classname::virtualAdvanceIterator, \
+ classname::virtualInstanceOf, \
\
- classname::call, \
- classname::callAsConstructor, \
+ classname::virtualCall, \
+ classname::virtualCallAsConstructor, \
}
#define DEFINE_MANAGED_VTABLE(classname) \