Qt 4.8
qdeclarativeinstruction_p.h
Go to the documentation of this file.
1 /****************************************************************************
2 **
3 ** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
4 ** Contact: http://www.qt-project.org/legal
5 **
6 ** This file is part of the QtDeclarative module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and Digia. For licensing terms and
14 ** conditions see http://qt.digia.com/licensing. For further information
15 ** use the contact form at http://qt.digia.com/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 2.1 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 2.1 requirements
23 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
24 **
25 ** In addition, as a special exception, Digia gives you certain additional
26 ** rights. These rights are described in the Digia Qt LGPL Exception
27 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
28 **
29 ** GNU General Public License Usage
30 ** Alternatively, this file may be used under the terms of the GNU
31 ** General Public License version 3.0 as published by the Free Software
32 ** Foundation and appearing in the file LICENSE.GPL included in the
33 ** packaging of this file. Please review the following information to
34 ** ensure the GNU General Public License version 3.0 requirements will be
35 ** met: http://www.gnu.org/copyleft/gpl.html.
36 **
37 **
38 ** $QT_END_LICENSE$
39 **
40 ****************************************************************************/
41 
42 #ifndef QDECLARATIVEINSTRUCTION_P_H
43 #define QDECLARATIVEINSTRUCTION_P_H
44 
45 //
46 // W A R N I N G
47 // -------------
48 //
49 // This file is not part of the Qt API. It exists purely as an
50 // implementation detail. This header file may change from version to
51 // version without notice, or even be removed.
52 //
53 // We mean it.
54 //
55 
56 #include <QtCore/qglobal.h>
57 
59 
62 {
63 public:
64  enum Type {
65  //
66  // Object Creation
67  //
68  // CreateObject - Create a new object instance and push it on the
69  // object stack
70  // SetId - Set the id of the object on the top of the object stack
71  // SetDefault - Sets the instance on the top of the object stack to
72  // be the context's default object.
73  // StoreMetaObject - Assign the dynamic metaobject to object on the
74  // top of the stack.
75  Init, /* init */
76  CreateObject, /* create */
77  CreateSimpleObject, /* createSimple */
78  SetId, /* setId */
80  CreateComponent, /* createComponent */
81  StoreMetaObject, /* storeMeta */
82 
83  //
84  // Precomputed single assignment
85  //
86  // StoreFloat - Store a float in a core property
87  // StoreDouble - Store a double in a core property
88  // StoreInteger - Store a int or uint in a core property
89  // StoreBool - Store a bool in a core property
90  // StoreString - Store a QString in a core property
91  // StoreUrl - Store a QUrl in a core property
92  // StoreColor - Store a QColor in a core property
93  // StoreDate - Store a QDate in a core property
94  // StoreTime - Store a QTime in a core property
95  // StoreDateTime - Store a QDateTime in a core property
96  // StoreVariant - Store a QVariant in a core property
97  // StoreObject - Pop the object on the top of the object stack and
98  // store it in a core property
99  StoreFloat, /* storeFloat */
100  StoreDouble, /* storeDouble */
101  StoreInteger, /* storeInteger */
102  StoreBool, /* storeBool */
103  StoreString, /* storeString */
104  StoreUrl, /* storeUrl */
105  StoreColor, /* storeColor */
106  StoreDate, /* storeDate */
107  StoreTime, /* storeTime */
108  StoreDateTime, /* storeDateTime */
109  StorePoint, /* storeRealPair */
110  StorePointF, /* storeRealPair */
111  StoreSize, /* storeRealPair */
112  StoreSizeF, /* storeRealPair */
113  StoreRect, /* storeRect */
114  StoreRectF, /* storeRect */
115  StoreVector3D, /* storeVector3D */
116  StoreVariant, /* storeString */
117  StoreVariantInteger, /* storeInteger */
118  StoreVariantDouble, /* storeDouble */
119  StoreVariantBool, /* storeBool */
120  StoreObject, /* storeObject */
121  StoreVariantObject, /* storeObject */
122  StoreInterface, /* storeObject */
123 
124  StoreSignal, /* storeSignal */
125  StoreImportedScript, /* storeScript */
126  StoreScriptString, /* storeScriptString */
127 
128  //
129  // Unresolved single assignment
130  //
131  AssignSignalObject, /* assignSignalObject */
132  AssignCustomType, /* assignCustomType */
133 
134  StoreBinding, /* assignBinding */
135  StoreBindingOnAlias, /* assignBinding */
136  StoreCompiledBinding, /* assignBinding */
137  StoreValueSource, /* assignValueSource */
138  StoreValueInterceptor, /* assignValueInterceptor */
139 
140  BeginObject, /* begin */
141 
144 
145  FetchAttached, /* fetchAttached */
146  FetchQList, /* fetch */
147  FetchObject, /* fetch */
148  FetchValueType, /* fetchValue */
149 
150  //
151  // Stack manipulation
152  //
153  // PopFetchedObject - Remove an object from the object stack
154  // PopQList - Remove a list from the list stack
157  PopValueType, /* fetchValue */
158 
159  //
160  // Deferred creation
161  //
162  Defer /* defer */
163  };
165  : line(0) {}
166 
168  unsigned short line;
169 
175  };
177  int type;
178  int data;
181  };
183  void (*create)(void *);
184  int typeSize;
185  int type;
187  };
189  int data;
192  };
194  int value;
195  int index;
196  };
198  int property;
199  int owner;
201  };
203  int property;
204  int owner;
206  };
208  unsigned int property;
209  int value;
210  short context;
211  short owner;
212  };
214  int property;
215  };
217  int property;
218  int type;
220  };
222  int property;
223  int type;
224  };
227  };
230  float value;
231  };
234  double value;
235  };
238  int value;
239  };
242  bool value;
243  };
246  int value;
247  };
250  int value;
251  int scope;
252  };
254  int value;
255  };
258  int value;
259  };
262  unsigned int value;
263  };
266  int value;
267  };
271  };
275  };
279  };
283  };
287  };
290  };
294  };
297  int value;
298  short context;
299  int name;
300  };
302  int signal;
303  };
305  int count;
307  int endLine;
309  };
311  int id;
312  };
315  };
316 
317  union {
352  };
353 
355 };
356 
358 
359 #endif // QDECLARATIVEINSTRUCTION_P_H
#define QT_END_NAMESPACE
This macro expands to.
Definition: qglobal.h:90
static Expression::Ptr create(Expression *const expr, const YYLTYPE &sourceLocator, const ParserContext *const parseInfo)
FetchAttachedInstruction fetchAttached
AssignSignalObjectInstruction assignSignalObject
FetchValueInstruction fetchValue
#define QT_BEGIN_NAMESPACE
This macro expands to.
Definition: qglobal.h:89
StoreRealPairInstruction storeRealPair
StoreScriptInstruction storeScript
StoreColorInstruction storeColor
StoreDateTimeInstruction storeDateTime
StoreFloatInstruction storeFloat
StoreObjectInstruction storeObject
CreateComponentInstruction createComponent
unsigned short ushort
Definition: qglobal.h:995
AssignBindingInstruction assignBinding
StoreDoubleInstruction storeDouble
unsigned int quint32
Definition: qglobal.h:938
StoreSignalInstruction storeSignal
CreateSimpleInstruction createSimple
#define Q_AUTOTEST_EXPORT
Definition: qglobal.h:1510
static QString dump(const QByteArray &)
FetchQmlListInstruction fetchQmlList
StoreVector3DInstruction storeVector3D
AssignValueInterceptorInstruction assignValueInterceptor
StoreIntegerInstruction storeInteger
AssignValueSourceInstruction assignValueSource
StoreStringInstruction storeString
AssignCustomTypeInstruction assignCustomType
StoreScriptStringInstruction storeScriptString