Qt 4.8
Classes | Macros | Functions
qdeclarativevme.cpp File Reference
#include "private/qdeclarativevme_p.h"
#include "private/qdeclarativecompiler_p.h"
#include "private/qdeclarativeboundsignal_p.h"
#include "private/qdeclarativestringconverters_p.h"
#include "private/qmetaobjectbuilder_p.h"
#include "private/qdeclarativedata_p.h"
#include "qdeclarative.h"
#include "private/qdeclarativecustomparser_p.h"
#include "qdeclarativeengine.h"
#include "qdeclarativecontext.h"
#include "qdeclarativecomponent.h"
#include "private/qdeclarativebinding_p.h"
#include "private/qdeclarativeengine_p.h"
#include "private/qdeclarativecomponent_p.h"
#include "private/qdeclarativevmemetaobject_p.h"
#include "private/qdeclarativebinding_p_p.h"
#include "private/qdeclarativecontext_p.h"
#include "private/qdeclarativecompiledbindings_p.h"
#include "private/qdeclarativeglobal_p.h"
#include "qdeclarativescriptstring.h"
#include <QStack>
#include <QWidget>
#include <QColor>
#include <QPointF>
#include <QSizeF>
#include <QRectF>
#include <QtCore/qdebug.h>
#include <QtCore/qvarlengtharray.h>
#include <QtCore/qcoreapplication.h>
#include <QtCore/qdatetime.h>

Go to the source code of this file.

Classes

struct  ListInstance
 
class  QDeclarativeVMEObjectStack
 
class  QDeclarativeVMEStack< T >
 

Macros

#define CLEAN_PROPERTY(o, index)   if (fastHasBinding(o, index)) removeBindingOnProperty(o, index)
 
#define VME_EXCEPTION(desc)
 

Functions

bool fastHasBinding (QObject *o, int index)
 
 Q_DECLARE_TYPEINFO (ListInstance, Q_PRIMITIVE_TYPE|Q_MOVABLE_TYPE)
 
static void removeBindingOnProperty (QObject *o, int index)
 

Macro Definition Documentation

◆ CLEAN_PROPERTY

#define CLEAN_PROPERTY (   o,
  index 
)    if (fastHasBinding(o, index)) removeBindingOnProperty(o, index)

Definition at line 167 of file qdeclarativevme.cpp.

◆ VME_EXCEPTION

#define VME_EXCEPTION (   desc)
Value:
{ \
QDeclarativeError error; \
error.setDescription(desc.trimmed()); \
error.setLine(instr.line); \
error.setUrl(comp->url); \
vmeErrors << error; \
break; \
}
#define error(msg)

Definition at line 102 of file qdeclarativevme.cpp.

Referenced by QDeclarativeVME::run().

Function Documentation

◆ fastHasBinding()

bool fastHasBinding ( QObject o,
int  index 
)
inline

Definition at line 153 of file qdeclarativevme.cpp.

154 {
156 
157  return ddata && (ddata->bindingBitsSize > index) &&
158  (ddata->bindingBits[index / 32] & (1 << (index % 32)));
159 }
static QObjectPrivate * get(QObject *o)
Definition: qobject_p.h:177
QAbstractDeclarativeData * declarativeData
Definition: qobject_p.h:214
quint16 index

◆ Q_DECLARE_TYPEINFO()

Q_DECLARE_TYPEINFO ( ListInstance  ,
Q_PRIMITIVE_TYPE Q_MOVABLE_TYPE 
)

◆ removeBindingOnProperty()

static void removeBindingOnProperty ( QObject o,
int  index 
)
static

Definition at line 161 of file qdeclarativevme.cpp.

162 {
164  if (binding) binding->destroy();
165 }
virtual void destroy(DestroyMode mode=DisconnectBinding)
Destroy the binding.
static QDeclarativeAbstractBinding * setBinding(QObject *, int coreIndex, int valueTypeIndex, QDeclarativeAbstractBinding *, WriteFlags flags=DontRemoveBinding)
quint16 index