42 #ifndef QDECLARATIVEJSNODEPOOL_P_H 43 #define QDECLARATIVEJSNODEPOOL_P_H 56 #include "private/qdeclarativejsglobal_p.h" 57 #include "private/qdeclarativejsmemorypool_p.h" 59 #include <QtCore/QHash> 60 #include <QtCore/QString> 71 class CompilationUnit;
74 template <
typename NodeType>
77 NodeType *node =
new (storage->
allocate(
sizeof(NodeType))) NodeType();
81 template <
typename NodeType,
typename Arg1>
84 NodeType *node =
new (storage->
allocate(
sizeof(NodeType))) NodeType(arg1);
88 template <
typename NodeType,
typename Arg1,
typename Arg2>
91 NodeType *node =
new (storage->
allocate(
sizeof(NodeType))) NodeType(arg1, arg2);
95 template <
typename NodeType,
typename Arg1,
typename Arg2,
typename Arg3>
98 NodeType *node =
new (storage->
allocate(
sizeof(NodeType))) NodeType(arg1, arg2, arg3);
102 template <
typename NodeType,
typename Arg1,
typename Arg2,
typename Arg3,
typename Arg4>
105 NodeType *node =
new (storage->
allocate(
sizeof(NodeType))) NodeType(arg1, arg2, arg3, arg4);
115 Code *createCompiledCode(
AST::Node *node, CompilationUnit &compilation);
119 #ifndef J_SCRIPT_NO_EVENT_NOTIFY 127 #ifndef J_SCRIPT_NO_EVENT_NOTIFY
char * allocate(int bytes)
#define Q_DISABLE_COPY(Class)
Disables the use of copy constructors and assignment operators for the given Class.
The QString class provides a Unicode character string.
The QHash class is a template class that provides a hash-table-based dictionary.
#define QML_PARSER_EXPORT
NodeType * makeAstNode(MemoryPool *storage)
#define QT_QML_END_NAMESPACE
#define QT_QML_BEGIN_NAMESPACE
QHash< AST::Node *, Code * > m_codeCache
static QString fileName(const QString &fileUrl)