aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4managed_p.h
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2014-05-06 14:34:28 +0200
committerSimon Hausmann <simon.hausmann@digia.com>2014-07-22 13:49:12 +0200
commit9afc7d9a53ad86e548e2d239ff012bed15eb52ba (patch)
tree509bb1d404858904351c69e190ab56a1bf3e3045 /src/qml/jsruntime/qv4managed_p.h
parentd33b68e2dfa8aae94f2a01cf603892099c97ea40 (diff)
Rename V4_MANAGED_NEW back to V4_MANAGED
Change-Id: I3d68fdf38bb2d42f70cbb1297a88eeb8d9316911 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4managed_p.h')
-rw-r--r--src/qml/jsruntime/qv4managed_p.h52
1 files changed, 20 insertions, 32 deletions
diff --git a/src/qml/jsruntime/qv4managed_p.h b/src/qml/jsruntime/qv4managed_p.h
index 3f16b0784a..69e08bdab3 100644
--- a/src/qml/jsruntime/qv4managed_p.h
+++ b/src/qml/jsruntime/qv4managed_p.h
@@ -69,14 +69,6 @@ inline void qYouForgotTheQ_MANAGED_Macro(T1, T2) {}
static inline const QV4::ManagedVTable *staticVTable() { return &static_vtbl; } \
template <typename T> \
QV4::Returned<T> *asReturned() { return QV4::Returned<T>::create(this); } \
-
-#define V4_MANAGED_NEW \
- public: \
- Q_MANAGED_CHECK \
- static const QV4::ManagedVTable static_vtbl; \
- static inline const QV4::ManagedVTable *staticVTable() { return &static_vtbl; } \
- template <typename T> \
- QV4::Returned<T> *asReturned() { return QV4::Returned<T>::create(this); } \
void __dataTest() { Q_STATIC_ASSERT(sizeof(*this) == sizeof(Data)); } \
const Data *d() const { return &static_cast<const Data &>(Managed::data); } \
Data *d() { return &static_cast<Data &>(Managed::data); }
@@ -186,6 +178,26 @@ const QV4::ObjectVTable classname::static_vtbl = \
struct Q_QML_PRIVATE_EXPORT Managed
{
+ struct Data {
+ InternalClass *internalClass;
+ union {
+ uint _data;
+ struct {
+ uchar markBit : 1;
+ uchar inUse : 1;
+ uchar extensible : 1; // used by Object
+ uchar _unused : 1;
+ uchar needsActivation : 1; // used by FunctionObject
+ uchar strictMode : 1; // used by FunctionObject
+ uchar bindingKeyFlag : 1;
+ uchar hasAccessorProperty : 1;
+ uchar _type;
+ mutable uchar subtype;
+ uchar _flags;
+ };
+ };
+ };
+ Data data;
V4_MANAGED
enum {
IsExecutionContext = false,
@@ -300,30 +312,6 @@ public:
ReturnedValue asReturnedValue() { return Value::fromManaged(this).asReturnedValue(); }
- struct Data {
- InternalClass *internalClass;
- union {
- uint _data;
- struct {
- uchar markBit : 1;
- uchar inUse : 1;
- uchar extensible : 1; // used by Object
- uchar _unused : 1;
- uchar needsActivation : 1; // used by FunctionObject
- uchar strictMode : 1; // used by FunctionObject
- uchar bindingKeyFlag : 1;
- uchar hasAccessorProperty : 1;
- uchar _type;
- mutable uchar subtype;
- uchar _flags;
- };
- };
- };
- Data data;
-
- Data *d() { return &data; }
- const Data *d() const { return &data; }
-
InternalClass *internalClass() const { return d()->internalClass; }
void setInternalClass(InternalClass *ic) { d()->internalClass = ic; }