1 // /usr/libexec/gcc/x86_64-pc-linux-gnu/4.1.2/cc1plus -quiet -I. -Igenerators -Igenerators/unix -Igenerators/win32 -Igenerators/mac -I/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/corelib/arch/generic -I/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include -I/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore -I/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include -I/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore -I/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/corelib/global -I/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script -I/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/mkspecs/linux-g++ -D_GNU_SOURCE -DQMAKE_OPENSOURCE_EDITION -DQT_NO_PCRE -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_STL -DQT_BUILD_QMAKE -DQT_NO_COMPRESS -DHAVE_QCONFIG_CPP -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT generators/unix/unixmake2.cpp -quiet -dumpbase unixmake2.cpp -march=athlon64 -auxbase-strip unixmake2.o -O2 -o - -frandom-seed=0
2 # 1 "generators/unix/unixmake2.cpp"
5 # 1 "generators/unix/unixmake2.cpp"
6 # 39 "generators/unix/unixmake2.cpp"
7 # 1 "generators/unix/unixmake.h" 1
8 # 42 "generators/unix/unixmake.h"
9 # 1 "generators/makefile.h" 1
10 # 42 "generators/makefile.h"
15 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstringlist.h" 1
16 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringlist.h" 1
17 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringlist.h"
18 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qalgorithms.h" 1
19 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qalgorithms.h" 1
20 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qalgorithms.h"
21 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qglobal.h" 1
22 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h" 1
23 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
24 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
25 # 152 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 3 4
26 typedef long int ptrdiff_t;
27 # 214 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 3 4
28 typedef long unsigned int size_t;
29 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h" 2
30 # 57 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
31 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qconfig.h" 1
32 # 58 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h" 2
33 # 609 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
34 typedef signed char qint8;
35 typedef unsigned char quint8;
37 typedef unsigned short quint16;
39 typedef unsigned int quint32;
40 # 623 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
41 typedef long long qint64;
42 typedef unsigned long long quint64;
45 typedef qint64 qlonglong;
46 typedef quint64 qulonglong;
47 # 653 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
48 template <int> class QUintForSize { private: typedef void Type; };
49 template <> class QUintForSize<4> { public: typedef quint32 Type; };
50 template <> class QUintForSize<8> { public: typedef quint64 Type; };
51 template <typename T> class QUintForType : public QUintForSize<sizeof(T)> { };
52 typedef QUintForType<void *>::Type quintptr;
54 template <int> class QIntForSize { private: typedef void Type; };
55 template <> class QIntForSize<4> { public: typedef qint32 Type; };
56 template <> class QIntForSize<8> { public: typedef qint64 Type; };
57 template <typename T> class QIntForType : public QIntForSize<sizeof(T)> { };
58 typedef QIntForType<void *>::Type qptrdiff;
64 typedef unsigned char uchar;
65 typedef unsigned short ushort;
66 typedef unsigned int uint;
67 typedef unsigned long ulong;
68 # 697 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
70 # 837 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
71 typedef int QNoImplicitBoolCast;
72 # 848 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
81 inline T qAbs(const T &t) { return t >= 0 ? t : -t; }
83 inline int qRound(qreal d)
84 { return d >= 0.0 ? int(d + 0.5) : int(d - int(d-1) + 0.5) + int(d-1); }
86 inline qint64 qRound64(qreal d)
87 { return d >= 0.0 ? qint64(d + 0.5) : qint64(d - qint64(d-1) + 0.5) + qint64(d-1); }
90 inline const T &qMin(const T &a, const T &b) { if (a < b) return a; return b; }
92 inline const T &qMax(const T &a, const T &b) { if (a < b) return b; return a; }
94 inline const T &qBound(const T &min, const T &val, const T &max)
95 { return qMax(min, qMin(max, val)); }
96 # 901 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
98 # 937 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
99 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qfeatures.h" 1
100 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qfeatures.h" 1
101 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qfeatures.h" 2
102 # 938 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h" 2
103 # 1104 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
108 WordSize = (sizeof(void *)<<3)
117 static const int ByteOrder;
118 # 1180 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
121 const char *qVersion();
123 # 1251 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
124 void qDebug(const char *, ...)
126 __attribute__ ((format (printf, 1, 2)))
130 void qWarning(const char *, ...)
132 __attribute__ ((format (printf, 1, 2)))
137 QString qt_error_string(int errorCode = -1);
138 void qCritical(const char *, ...)
140 __attribute__ ((format (printf, 1, 2)))
143 void qFatal(const char *, ...)
145 __attribute__ ((format (printf, 1, 2)))
152 void qErrnoWarning(int code, const char *msg, ...);
153 void qErrnoWarning(const char *msg, ...);
154 # 1291 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
158 inline QDebug qDebug();
159 inline QDebug qWarning();
160 inline QDebug qCritical();
161 # 1310 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
162 inline void qt_noop() {}
164 void qt_assert(const char *assertion, const char *file, int line);
165 # 1326 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
166 void qt_assert_x(const char *where, const char *what, const char *file, int line);
167 # 1336 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
168 void qt_check_pointer(const char *, int);
169 # 1371 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
170 enum QtMsgType { QtDebugMsg, QtWarningMsg, QtCriticalMsg, QtFatalMsg, QtSystemMsg = QtCriticalMsg };
172 void qt_message_output(QtMsgType, const char *buf);
174 typedef void (*QtMsgHandler)(QtMsgType, const char *);
175 QtMsgHandler qInstallMsgHandler(QtMsgHandler);
176 # 1385 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
177 template <typename T>
182 inline QGlobalStatic(T *p) : pointer(p) { }
183 inline ~QGlobalStatic() { pointer = 0; }
185 # 1481 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
191 inline explicit QBool(bool B) : b(B) {}
192 inline operator const void *() const
193 { return b ? static_cast<const void *>(this) : static_cast<const void *>(0); }
196 inline bool operator==(QBool b1, bool b2) { return !b1 == !b2; }
197 inline bool operator==(bool b1, QBool b2) { return !b1 == !b2; }
198 inline bool operator==(QBool b1, QBool b2) { return !b1 == !b2; }
199 inline bool operator!=(QBool b1, bool b2) { return !b1 != !b2; }
200 inline bool operator!=(bool b1, QBool b2) { return !b1 != !b2; }
201 inline bool operator!=(QBool b1, QBool b2) { return !b1 != !b2; }
203 static inline bool qFuzzyCompare(double p1, double p2)
205 return qAbs(p1 - p2) < 0.00000000001;
208 static inline bool qFuzzyCompare(float p1, float p2)
210 return qAbs(p1 - p2) < 0.000001;
218 static inline bool qIsNull(double d)
226 return val.u == quint64(0);
234 static inline bool qIsNull(float f)
244 # 1571 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
245 template <typename T> inline bool qIsDetached(T &) { return true; }
247 template <typename T>
255 isLarge = (sizeof(T)>sizeof(void*)),
260 template <typename T>
272 # 1629 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
275 Q_PRIMITIVE_TYPE = 0x1,
277 Q_MOVABLE_TYPE = 0x2,
280 # 1692 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
281 template <> class QTypeInfo<bool> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(bool)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "bool"; } };
282 template <> class QTypeInfo<char> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(char)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "char"; } };
283 template <> class QTypeInfo<signed char> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(signed char)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "signed char"; } };
284 template <> class QTypeInfo<uchar> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(uchar)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "uchar"; } };
285 template <> class QTypeInfo<short> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(short)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "short"; } };
286 template <> class QTypeInfo<ushort> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(ushort)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "ushort"; } };
287 template <> class QTypeInfo<int> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(int)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "int"; } };
288 template <> class QTypeInfo<uint> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(uint)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "uint"; } };
289 template <> class QTypeInfo<long> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(long)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "long"; } };
290 template <> class QTypeInfo<ulong> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(ulong)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "ulong"; } };
291 template <> class QTypeInfo<qint64> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(qint64)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "qint64"; } };
292 template <> class QTypeInfo<quint64> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(quint64)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "quint64"; } };
293 template <> class QTypeInfo<float> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(float)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "float"; } };
294 template <> class QTypeInfo<double> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(double)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "double"; } };
296 template <> class QTypeInfo<long double> { public: enum { isComplex = (((Q_PRIMITIVE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_PRIMITIVE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(long double)>sizeof(void*)), isPointer = false, isDummy = (((Q_PRIMITIVE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "long double"; } };
303 void *qMalloc(size_t size);
304 void qFree(void *ptr);
305 void *qRealloc(void *ptr, size_t size);
306 void *qMemCopy(void *dest, const void *src, size_t n);
307 void *qMemSet(void *dest, int c, size_t n);
308 # 1755 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
314 inline operator int() const { return i; }
317 inline QFlag::QFlag(int ai) : i(ai) {}
322 template<typename Enum>
328 typedef Enum enum_type;
329 inline QFlags(const QFlags &f) : i(f.i) {}
330 inline QFlags(Enum f) : i(f) {}
331 inline QFlags(Zero = 0) : i(0) {}
332 inline QFlags(QFlag f) : i(f) {}
334 inline QFlags &operator=(const QFlags &f) { i = f.i; return *this; }
335 inline QFlags &operator&=(int mask) { i &= mask; return *this; }
336 inline QFlags &operator&=(uint mask) { i &= mask; return *this; }
337 inline QFlags &operator|=(QFlags f) { i |= f.i; return *this; }
338 inline QFlags &operator|=(Enum f) { i |= f; return *this; }
339 inline QFlags &operator^=(QFlags f) { i ^= f.i; return *this; }
340 inline QFlags &operator^=(Enum f) { i ^= f; return *this; }
342 inline operator int() const { return i; }
344 inline QFlags operator|(QFlags f) const { QFlags g; g.i = i | f.i; return g; }
345 inline QFlags operator|(Enum f) const { QFlags g; g.i = i | f; return g; }
346 inline QFlags operator^(QFlags f) const { QFlags g; g.i = i ^ f.i; return g; }
347 inline QFlags operator^(Enum f) const { QFlags g; g.i = i ^ f; return g; }
348 inline QFlags operator&(int mask) const { QFlags g; g.i = i & mask; return g; }
349 inline QFlags operator&(uint mask) const { QFlags g; g.i = i & mask; return g; }
350 inline QFlags operator&(Enum f) const { QFlags g; g.i = i & f; return g; }
351 inline QFlags operator~() const { QFlags g; g.i = ~i; return g; }
353 inline bool operator!() const { return !i; }
355 inline bool testFlag(Enum f) const { return i & f; }
362 # 1827 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
363 template <typename T>
364 class QForeachContainer {
366 inline QForeachContainer(const T& t) : c(t), brk(0), i(c.begin()), e(c.end()) { }
369 typename T::const_iterator i, e;
371 # 1939 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
373 QByteArray qgetenv(const char *varName);
375 inline int qIntCast(double f) { return int(f); }
376 inline int qIntCast(float f) { return int(f); }
381 void qsrand(uint seed);
383 # 2031 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qglobal.h"
384 enum QtValidLicenseForCoreModule { LicensedCore = true };
387 enum QtValidLicenseForGuiModule { LicensedGui = true };
390 enum QtValidLicenseForNetworkModule { LicensedNetwork = true };
393 enum QtValidLicenseForOpenGLModule { LicensedOpenGL = true };
396 enum QtValidLicenseForSqlModule { LicensedSql = true };
399 enum QtValidLicenseForXmlModule { LicensedXml = true };
402 enum QtValidLicenseForScriptModule { LicensedScript = true };
405 enum QtValidLicenseForQt3SupportLightModule { LicensedQt3SupportLight = true };
408 enum QtValidLicenseForQt3SupportModule { LicensedQt3Support = true };
411 enum QtValidLicenseForSvgModule { LicensedSvg = true };
414 enum QtValidLicenseForActiveQtModule { LicensedActiveQt = true };
421 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qglobal.h" 2
422 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qalgorithms.h" 2
426 typedef QtValidLicenseForCoreModule QtCoreModule;
432 namespace QAlgorithmsPrivate {
434 template <typename RandomAccessIterator, typename T, typename LessThan>
435 void qSortHelper(RandomAccessIterator start, RandomAccessIterator end, const T &t, LessThan lessThan);
436 template <typename RandomAccessIterator, typename T>
437 inline void qSortHelper(RandomAccessIterator begin, RandomAccessIterator end, const T &dummy);
439 template <typename RandomAccessIterator, typename T, typename LessThan>
440 void qStableSortHelper(RandomAccessIterator start, RandomAccessIterator end, const T &t, LessThan lessThan);
441 template <typename RandomAccessIterator, typename T>
442 inline void qStableSortHelper(RandomAccessIterator, RandomAccessIterator, const T &);
444 template <typename RandomAccessIterator, typename T, typename LessThan>
445 RandomAccessIterator qLowerBoundHelper(RandomAccessIterator begin, RandomAccessIterator end, const T &value, LessThan lessThan);
446 template <typename RandomAccessIterator, typename T, typename LessThan>
447 RandomAccessIterator qUpperBoundHelper(RandomAccessIterator begin, RandomAccessIterator end, const T &value, LessThan lessThan);
448 template <typename RandomAccessIterator, typename T, typename LessThan>
449 RandomAccessIterator qBinaryFindHelper(RandomAccessIterator begin, RandomAccessIterator end, const T &value, LessThan lessThan);
453 template <typename InputIterator, typename OutputIterator>
454 inline OutputIterator qCopy(InputIterator begin, InputIterator end, OutputIterator dest)
461 template <typename BiIterator1, typename BiIterator2>
462 inline BiIterator2 qCopyBackward(BiIterator1 begin, BiIterator1 end, BiIterator2 dest)
469 template <typename InputIterator1, typename InputIterator2>
470 inline bool qEqual(InputIterator1 first1, InputIterator1 last1, InputIterator2 first2)
472 for (; first1 != last1; ++first1, ++first2)
473 if (!(*first1 == *first2))
478 template <typename ForwardIterator, typename T>
479 inline void qFill(ForwardIterator first, ForwardIterator last, const T &val)
481 for (; first != last; ++first)
485 template <typename Container, typename T>
486 inline void qFill(Container &container, const T &val)
488 qFill(container.begin(), container.end(), val);
491 template <typename InputIterator, typename T>
492 inline InputIterator qFind(InputIterator first, InputIterator last, const T &val)
494 while (first != last && !(*first == val))
499 template <typename Container, typename T>
500 inline typename Container::const_iterator qFind(const Container &container, const T &val)
502 return qFind(container.constBegin(), container.constEnd(), val);
505 template <typename InputIterator, typename T, typename Size>
506 inline void qCount(InputIterator first, InputIterator last, const T &value, Size &n)
508 for (; first != last; ++first)
513 template <typename Container, typename T, typename Size>
514 inline void qCount(const Container &container, const T &value, Size &n)
516 qCount(container.constBegin(), container.constEnd(), value, n);
518 # 147 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qalgorithms.h"
519 template <typename T>
520 inline void qSwap(T &value1, T &value2)
526 # 167 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qalgorithms.h"
527 template <typename T>
531 inline bool operator()(const T &t1, const T &t2) const
537 template <typename T>
541 inline bool operator()(const T &t1, const T &t2) const
548 template <typename RandomAccessIterator>
549 inline void qSort(RandomAccessIterator start, RandomAccessIterator end)
552 QAlgorithmsPrivate::qSortHelper(start, end, *start);
555 template <typename RandomAccessIterator, typename LessThan>
556 inline void qSort(RandomAccessIterator start, RandomAccessIterator end, LessThan lessThan)
559 QAlgorithmsPrivate::qSortHelper(start, end, *start, lessThan);
562 template<typename Container>
563 inline void qSort(Container &c)
570 QAlgorithmsPrivate::qSortHelper(c.begin(), c.end(), *c.begin());
573 template <typename RandomAccessIterator>
574 inline void qStableSort(RandomAccessIterator start, RandomAccessIterator end)
577 QAlgorithmsPrivate::qStableSortHelper(start, end, *start);
580 template <typename RandomAccessIterator, typename LessThan>
581 inline void qStableSort(RandomAccessIterator start, RandomAccessIterator end, LessThan lessThan)
584 QAlgorithmsPrivate::qStableSortHelper(start, end, *start, lessThan);
587 template<typename Container>
588 inline void qStableSort(Container &c)
595 QAlgorithmsPrivate::qStableSortHelper(c.begin(), c.end(), *c.begin());
598 template <typename RandomAccessIterator, typename T>
599 RandomAccessIterator qLowerBound(RandomAccessIterator begin, RandomAccessIterator end, const T &value)
604 RandomAccessIterator middle;
610 middle = begin + half;
611 if (*middle < value) {
621 template <typename RandomAccessIterator, typename T, typename LessThan>
622 RandomAccessIterator qLowerBound(RandomAccessIterator begin, RandomAccessIterator end, const T &value, LessThan lessThan)
624 return QAlgorithmsPrivate::qLowerBoundHelper(begin, end, value, lessThan);
627 template <typename Container, typename T>
628 typename Container::const_iterator qLowerBound(const Container &container, const T &value)
630 return QAlgorithmsPrivate::qLowerBoundHelper(container.constBegin(), container.constEnd(), value, qLess<T>());
633 template <typename RandomAccessIterator, typename T>
634 RandomAccessIterator qUpperBound(RandomAccessIterator begin, RandomAccessIterator end, const T &value)
637 RandomAccessIterator middle;
643 middle = begin + half;
644 if (value < *middle) {
654 template <typename RandomAccessIterator, typename T, typename LessThan>
655 RandomAccessIterator qUpperBound(RandomAccessIterator begin, RandomAccessIterator end, const T &value, LessThan lessThan)
657 return QAlgorithmsPrivate::qUpperBoundHelper(begin, end, value, lessThan);
660 template <typename Container, typename T>
661 typename Container::const_iterator qUpperBound(const Container &container, const T &value)
663 return QAlgorithmsPrivate::qUpperBoundHelper(container.constBegin(), container.constEnd(), value, qLess<T>());
666 template <typename RandomAccessIterator, typename T>
667 RandomAccessIterator qBinaryFind(RandomAccessIterator begin, RandomAccessIterator end, const T &value)
671 int r = end - begin - 1;
674 int i = (l + r + 1) / 2;
677 if (value < begin[i])
683 if (begin[i] < value || value < begin[i])
689 template <typename RandomAccessIterator, typename T, typename LessThan>
690 RandomAccessIterator qBinaryFind(RandomAccessIterator begin, RandomAccessIterator end, const T &value, LessThan lessThan)
692 return QAlgorithmsPrivate::qBinaryFindHelper(begin, end, value, lessThan);
695 template <typename Container, typename T>
696 typename Container::const_iterator qBinaryFind(const Container &container, const T &value)
698 return QAlgorithmsPrivate::qBinaryFindHelper(container.constBegin(), container.constEnd(), value, qLess<T>());
701 template <typename ForwardIterator>
702 void qDeleteAll(ForwardIterator begin, ForwardIterator end)
704 while (begin != end) {
710 template <typename Container>
711 inline void qDeleteAll(const Container &c)
713 qDeleteAll(c.begin(), c.end());
720 namespace QAlgorithmsPrivate {
722 template <typename RandomAccessIterator, typename T, typename LessThan>
723 void qSortHelper(RandomAccessIterator start, RandomAccessIterator end, const T &t, LessThan lessThan)
726 int span = end - start;
731 RandomAccessIterator low = start, high = end - 1;
732 RandomAccessIterator pivot = start + span / 2;
734 if (lessThan(*end, *start))
739 if (lessThan(*pivot, *start))
740 qSwap(*pivot, *start);
741 if (lessThan(*end, *pivot))
749 while (low < high && lessThan(*low, *end))
752 while (high > low && lessThan(*end, *high))
764 if (lessThan(*low, *end))
768 qSortHelper(start, low, t, lessThan);
775 template <typename RandomAccessIterator, typename T>
776 inline void qSortHelper(RandomAccessIterator begin, RandomAccessIterator end, const T &dummy)
778 qSortHelper(begin, end, dummy, qLess<T>());
781 template <typename RandomAccessIterator>
782 void qReverse(RandomAccessIterator begin, RandomAccessIterator end)
786 qSwap(*begin++, *end--);
789 template <typename RandomAccessIterator>
790 void qRotate(RandomAccessIterator begin, RandomAccessIterator middle, RandomAccessIterator end)
792 qReverse(begin, middle);
793 qReverse(middle, end);
794 qReverse(begin, end);
797 template <typename RandomAccessIterator, typename T, typename LessThan>
798 void qMerge(RandomAccessIterator begin, RandomAccessIterator pivot, RandomAccessIterator end, T &t, LessThan lessThan)
800 const int len1 = pivot - begin;
801 const int len2 = end - pivot;
803 if (len1 == 0 || len2 == 0)
806 if (len1 + len2 == 2) {
807 if (lessThan(*(begin + 1), *(begin)))
808 qSwap(*begin, *(begin + 1));
812 RandomAccessIterator firstCut;
813 RandomAccessIterator secondCut;
816 const int len1Half = len1 / 2;
817 firstCut = begin + len1Half;
818 secondCut = qLowerBound(pivot, end, *firstCut, lessThan);
819 len2Half = secondCut - pivot;
822 secondCut = pivot + len2Half;
823 firstCut = qUpperBound(begin, pivot, *secondCut, lessThan);
826 qRotate(firstCut, pivot, secondCut);
827 const RandomAccessIterator newPivot = firstCut + len2Half;
828 qMerge(begin, firstCut, newPivot, t, lessThan);
829 qMerge(newPivot, secondCut, end, t, lessThan);
832 template <typename RandomAccessIterator, typename T, typename LessThan>
833 void qStableSortHelper(RandomAccessIterator begin, RandomAccessIterator end, const T &t, LessThan lessThan)
835 const int span = end - begin;
839 const RandomAccessIterator middle = begin + span / 2;
840 qStableSortHelper(begin, middle, t, lessThan);
841 qStableSortHelper(middle, end, t, lessThan);
842 qMerge(begin, middle, end, t, lessThan);
845 template <typename RandomAccessIterator, typename T>
846 inline void qStableSortHelper(RandomAccessIterator begin, RandomAccessIterator end, const T &dummy)
848 qStableSortHelper(begin, end, dummy, qLess<T>());
851 template <typename RandomAccessIterator, typename T, typename LessThan>
852 RandomAccessIterator qLowerBoundHelper(RandomAccessIterator begin, RandomAccessIterator end, const T &value, LessThan lessThan)
854 RandomAccessIterator middle;
860 middle = begin + half;
861 if (lessThan(*middle, value)) {
872 template <typename RandomAccessIterator, typename T, typename LessThan>
873 RandomAccessIterator qUpperBoundHelper(RandomAccessIterator begin, RandomAccessIterator end, const T &value, LessThan lessThan)
875 RandomAccessIterator middle;
881 middle = begin + half;
882 if (lessThan(value, *middle)) {
892 template <typename RandomAccessIterator, typename T, typename LessThan>
893 RandomAccessIterator qBinaryFindHelper(RandomAccessIterator begin, RandomAccessIterator end, const T &value, LessThan lessThan)
896 int r = end - begin - 1;
899 int i = (l + r + 1) / 2;
902 if (lessThan(value, begin[i]))
908 if (lessThan(begin[i], value) || lessThan(value, begin[i]))
917 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qalgorithms.h" 2
918 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringlist.h" 2
919 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qdatastream.h" 1
920 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdatastream.h" 1
921 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdatastream.h"
922 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qiodevice.h" 1
923 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qiodevice.h" 1
924 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qiodevice.h"
925 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qobjectdefs.h" 1
926 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qobjectdefs.h" 1
927 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qobjectdefs.h"
928 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qnamespace.h" 1
929 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h" 1
930 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
931 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qglobal.h" 1
932 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h" 2
936 typedef QtValidLicenseForCoreModule QtCoreModule;
944 # 75 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
968 enum KeyboardModifier {
969 NoModifier = 0x00000000,
970 ShiftModifier = 0x02000000,
971 ControlModifier = 0x04000000,
972 AltModifier = 0x08000000,
973 MetaModifier = 0x10000000,
974 KeypadModifier = 0x20000000,
975 GroupSwitchModifier = 0x40000000,
977 KeyboardModifierMask = 0xfe000000
979 typedef QFlags<KeyboardModifier> KeyboardModifiers;
983 META = Qt::MetaModifier,
984 SHIFT = Qt::ShiftModifier,
985 CTRL = Qt::ControlModifier,
986 ALT = Qt::AltModifier,
987 MODIFIER_MASK = KeyboardModifierMask,
988 UNICODE_ACCEL = 0x00000000
992 NoButton = 0x00000000,
993 LeftButton = 0x00000001,
994 RightButton = 0x00000002,
995 MidButton = 0x00000004,
996 XButton1 = 0x00000008,
997 XButton2 = 0x00000010,
998 MouseButtonMask = 0x000000ff
1000 typedef QFlags<MouseButton> MouseButtons;
1001 # 144 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1007 typedef QFlags<Orientation> Orientations;
1013 StrongFocus = TabFocus | ClickFocus | 0x8,
1014 WheelFocus = StrongFocus | 0x4
1030 enum AlignmentFlag {
1032 AlignLeading = AlignLeft,
1033 AlignRight = 0x0002,
1034 AlignTrailing = AlignRight,
1035 AlignHCenter = 0x0004,
1036 AlignJustify = 0x0008,
1037 AlignAbsolute = 0x0010,
1038 AlignHorizontal_Mask = AlignLeft | AlignRight | AlignHCenter | AlignJustify | AlignAbsolute,
1041 AlignBottom = 0x0040,
1042 AlignVCenter = 0x0080,
1043 AlignVertical_Mask = AlignTop | AlignBottom | AlignVCenter,
1045 AlignCenter = AlignVCenter | AlignHCenter
1051 typedef QFlags<AlignmentFlag> Alignment;
1054 TextSingleLine = 0x0100,
1055 TextDontClip = 0x0200,
1056 TextExpandTabs = 0x0400,
1057 TextShowMnemonic = 0x0800,
1058 TextWordWrap = 0x1000,
1059 TextWrapAnywhere = 0x2000,
1060 TextDontPrint = 0x4000,
1061 TextIncludeTrailingSpaces = 0x08000000,
1062 TextHideMnemonic = 0x8000,
1063 TextJustificationForced = 0x10000
1064 # 218 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1070 enum TextElideMode {
1078 Widget = 0x00000000,
1079 Window = 0x00000001,
1080 Dialog = 0x00000002 | Window,
1081 Sheet = 0x00000004 | Window,
1082 Drawer = 0x00000006 | Window,
1083 Popup = 0x00000008 | Window,
1084 Tool = 0x0000000a | Window,
1085 ToolTip = 0x0000000c | Window,
1086 SplashScreen = 0x0000000e | Window,
1087 Desktop = 0x00000010 | Window,
1088 SubWindow = 0x00000012,
1090 WindowType_Mask = 0x000000ff,
1091 MSWindowsFixedSizeDialogHint = 0x00000100,
1092 MSWindowsOwnDC = 0x00000200,
1093 X11BypassWindowManagerHint = 0x00000400,
1094 FramelessWindowHint = 0x00000800,
1095 WindowTitleHint = 0x00001000,
1096 WindowSystemMenuHint = 0x00002000,
1097 WindowMinimizeButtonHint = 0x00004000,
1098 WindowMaximizeButtonHint = 0x00008000,
1099 WindowMinMaxButtonsHint = WindowMinimizeButtonHint | WindowMaximizeButtonHint,
1100 WindowContextHelpButtonHint = 0x00010000,
1101 WindowShadeButtonHint = 0x00020000,
1102 WindowStaysOnTopHint = 0x00040000,
1103 CustomizeWindowHint = 0x02000000
1104 # 307 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1107 typedef QFlags<WindowType> WindowFlags;
1110 WindowNoState = 0x00000000,
1111 WindowMinimized = 0x00000001,
1112 WindowMaximized = 0x00000002,
1113 WindowFullScreen = 0x00000004,
1114 WindowActive = 0x00000008
1117 typedef QFlags<WindowState> WindowStates;
1119 enum WidgetAttribute {
1122 WA_MouseTracking = 2,
1123 WA_ContentsPropagated = 3,
1124 WA_OpaquePaintEvent = 4,
1125 WA_NoBackground = WA_OpaquePaintEvent,
1126 WA_StaticContents = 5,
1128 WA_PaintOnScreen = 8,
1129 WA_NoSystemBackground = 9,
1130 WA_UpdatesDisabled = 10,
1132 WA_MacNoClickThrough = 12,
1133 WA_PaintOutsidePaintEvent = 13,
1134 WA_InputMethodEnabled = 14,
1135 WA_WState_Visible = 15,
1136 WA_WState_Hidden = 16,
1138 WA_ForceDisabled = 32,
1139 WA_KeyCompression = 33,
1140 WA_PendingMoveEvent = 34,
1141 WA_PendingResizeEvent = 35,
1145 WA_NoChildEventsFromChildren = 39,
1146 WA_WindowModified = 41,
1149 WA_PendingUpdate = 44,
1150 WA_InvalidSize = 45,
1151 WA_MacBrushedMetal = 46,
1152 WA_MacMetalStyle = WA_MacBrushedMetal,
1153 WA_CustomWhatsThis = 47,
1154 WA_LayoutOnEntireRect = 48,
1155 WA_OutsideWSRange = 49,
1156 WA_GrabbedShortcut = 50,
1157 WA_TransparentForMouseEvents = 51,
1158 WA_PaintUnclipped = 52,
1159 WA_SetWindowIcon = 53,
1160 WA_NoMouseReplay = 54,
1161 WA_DeleteOnClose = 55,
1162 WA_RightToLeft = 56,
1163 WA_SetLayoutDirection = 57,
1164 WA_NoChildEventsForParent = 58,
1165 WA_ForceUpdatesDisabled = 59,
1167 WA_WState_Created = 60,
1168 WA_WState_CompressKeys = 61,
1169 WA_WState_InPaintEvent = 62,
1170 WA_WState_Reparented = 63,
1171 WA_WState_ConfigPending = 64,
1172 WA_WState_Polished = 66,
1174 WA_WState_OwnSizePolicy = 68,
1175 WA_WState_ExplicitShowHide = 69,
1178 WA_MouseNoMask = 71,
1179 WA_GroupLeader = 72,
1180 WA_NoMousePropagation = 73,
1182 WA_InputMethodTransparent = 75,
1183 WA_QuitOnClose = 76,
1185 WA_KeyboardFocusChange = 77,
1187 WA_AcceptDrops = 78,
1188 WA_DropSiteRegistered = 79,
1189 WA_ForceAcceptDrops = WA_DropSiteRegistered,
1191 WA_WindowPropagation = 80,
1193 WA_NoX11EventCompression = 81,
1194 WA_TintedBackground = 82,
1195 WA_X11OpenGLOverlay = 83,
1196 WA_AlwaysShowToolTips = 84,
1197 WA_MacOpaqueSizeGrip = 85,
1201 WA_MacShowFocusRect = 88,
1203 WA_MacNormalSize = 89,
1204 WA_MacSmallSize = 90,
1205 WA_MacMiniSize = 91,
1207 WA_LayoutUsesWidgetRect = 92,
1208 WA_StyledBackground = 93,
1209 WA_MSWindowsUseDirect3D = 94,
1210 WA_CanHostQMdiSubWindowTitleBar = 95,
1212 WA_MacAlwaysShowToolWindow = 96,
1220 enum ApplicationAttribute
1222 AA_ImmediateWidgetCreation = 0,
1223 AA_MSWindowsUseDirect3DByDefault = 1,
1233 enum ImageConversionFlag {
1234 ColorMode_Mask = 0x00000003,
1235 AutoColor = 0x00000000,
1236 ColorOnly = 0x00000003,
1237 MonoOnly = 0x00000002,
1240 AlphaDither_Mask = 0x0000000c,
1241 ThresholdAlphaDither = 0x00000000,
1242 OrderedAlphaDither = 0x00000004,
1243 DiffuseAlphaDither = 0x00000008,
1244 NoAlpha = 0x0000000c,
1246 Dither_Mask = 0x00000030,
1247 DiffuseDither = 0x00000000,
1248 OrderedDither = 0x00000010,
1249 ThresholdDither = 0x00000020,
1252 DitherMode_Mask = 0x000000c0,
1253 AutoDither = 0x00000000,
1254 PreferDither = 0x00000040,
1255 AvoidDither = 0x00000080
1257 typedef QFlags<ImageConversionFlag> ImageConversionFlags;
1263 # 485 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1265 Key_Escape = 0x01000000,
1266 Key_Tab = 0x01000001,
1267 Key_Backtab = 0x01000002,
1271 Key_Backspace = 0x01000003,
1275 Key_Return = 0x01000004,
1276 Key_Enter = 0x01000005,
1277 Key_Insert = 0x01000006,
1278 Key_Delete = 0x01000007,
1279 Key_Pause = 0x01000008,
1280 Key_Print = 0x01000009,
1281 Key_SysReq = 0x0100000a,
1282 Key_Clear = 0x0100000b,
1283 Key_Home = 0x01000010,
1284 Key_End = 0x01000011,
1285 Key_Left = 0x01000012,
1286 Key_Up = 0x01000013,
1287 Key_Right = 0x01000014,
1288 Key_Down = 0x01000015,
1289 Key_PageUp = 0x01000016,
1293 Key_PageDown = 0x01000017,
1297 Key_Shift = 0x01000020,
1298 Key_Control = 0x01000021,
1299 Key_Meta = 0x01000022,
1300 Key_Alt = 0x01000023,
1301 Key_CapsLock = 0x01000024,
1302 Key_NumLock = 0x01000025,
1303 Key_ScrollLock = 0x01000026,
1304 Key_F1 = 0x01000030,
1305 Key_F2 = 0x01000031,
1306 Key_F3 = 0x01000032,
1307 Key_F4 = 0x01000033,
1308 Key_F5 = 0x01000034,
1309 Key_F6 = 0x01000035,
1310 Key_F7 = 0x01000036,
1311 Key_F8 = 0x01000037,
1312 Key_F9 = 0x01000038,
1313 Key_F10 = 0x01000039,
1314 Key_F11 = 0x0100003a,
1315 Key_F12 = 0x0100003b,
1316 Key_F13 = 0x0100003c,
1317 Key_F14 = 0x0100003d,
1318 Key_F15 = 0x0100003e,
1319 Key_F16 = 0x0100003f,
1320 Key_F17 = 0x01000040,
1321 Key_F18 = 0x01000041,
1322 Key_F19 = 0x01000042,
1323 Key_F20 = 0x01000043,
1324 Key_F21 = 0x01000044,
1325 Key_F22 = 0x01000045,
1326 Key_F23 = 0x01000046,
1327 Key_F24 = 0x01000047,
1328 Key_F25 = 0x01000048,
1329 Key_F26 = 0x01000049,
1330 Key_F27 = 0x0100004a,
1331 Key_F28 = 0x0100004b,
1332 Key_F29 = 0x0100004c,
1333 Key_F30 = 0x0100004d,
1334 Key_F31 = 0x0100004e,
1335 Key_F32 = 0x0100004f,
1336 Key_F33 = 0x01000050,
1337 Key_F34 = 0x01000051,
1338 Key_F35 = 0x01000052,
1339 Key_Super_L = 0x01000053,
1340 Key_Super_R = 0x01000054,
1341 Key_Menu = 0x01000055,
1342 Key_Hyper_L = 0x01000056,
1343 Key_Hyper_R = 0x01000057,
1344 Key_Help = 0x01000058,
1345 Key_Direction_L = 0x01000059,
1346 Key_Direction_R = 0x01000060,
1348 Key_Any = Key_Space,
1350 Key_QuoteDbl = 0x22,
1351 Key_NumberSign = 0x23,
1354 Key_Ampersand = 0x26,
1355 Key_Apostrophe = 0x27,
1356 Key_ParenLeft = 0x28,
1357 Key_ParenRight = 0x29,
1358 Key_Asterisk = 0x2a,
1375 Key_Semicolon = 0x3b,
1379 Key_Question = 0x3f,
1407 Key_BracketLeft = 0x5b,
1408 Key_Backslash = 0x5c,
1409 Key_BracketRight = 0x5d,
1410 Key_AsciiCircum = 0x5e,
1411 Key_Underscore = 0x5f,
1412 Key_QuoteLeft = 0x60,
1413 Key_BraceLeft = 0x7b,
1415 Key_BraceRight = 0x7d,
1416 Key_AsciiTilde = 0x7e,
1418 Key_nobreakspace = 0x0a0,
1419 Key_exclamdown = 0x0a1,
1421 Key_sterling = 0x0a3,
1422 Key_currency = 0x0a4,
1424 Key_brokenbar = 0x0a6,
1425 Key_section = 0x0a7,
1426 Key_diaeresis = 0x0a8,
1427 Key_copyright = 0x0a9,
1428 Key_ordfeminine = 0x0aa,
1429 Key_guillemotleft = 0x0ab,
1430 Key_notsign = 0x0ac,
1432 Key_registered = 0x0ae,
1435 Key_plusminus = 0x0b1,
1436 Key_twosuperior = 0x0b2,
1437 Key_threesuperior = 0x0b3,
1440 Key_paragraph = 0x0b6,
1441 Key_periodcentered = 0x0b7,
1442 Key_cedilla = 0x0b8,
1443 Key_onesuperior = 0x0b9,
1444 Key_masculine = 0x0ba,
1445 Key_guillemotright = 0x0bb,
1446 Key_onequarter = 0x0bc,
1447 Key_onehalf = 0x0bd,
1448 Key_threequarters = 0x0be,
1449 Key_questiondown = 0x0bf,
1452 Key_Acircumflex = 0x0c2,
1454 Key_Adiaeresis = 0x0c4,
1457 Key_Ccedilla = 0x0c7,
1460 Key_Ecircumflex = 0x0ca,
1461 Key_Ediaeresis = 0x0cb,
1464 Key_Icircumflex = 0x0ce,
1465 Key_Idiaeresis = 0x0cf,
1470 Key_Ocircumflex = 0x0d4,
1472 Key_Odiaeresis = 0x0d6,
1473 Key_multiply = 0x0d7,
1474 Key_Ooblique = 0x0d8,
1477 Key_Ucircumflex = 0x0db,
1478 Key_Udiaeresis = 0x0dc,
1482 # 728 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1483 Key_division = 0x0f7,
1484 # 738 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1485 Key_ydiaeresis = 0x0ff,
1492 Key_AltGr = 0x01001103,
1493 Key_Multi_key = 0x01001120,
1494 Key_Codeinput = 0x01001137,
1495 Key_SingleCandidate = 0x0100113c,
1496 Key_MultipleCandidate = 0x0100113d,
1497 Key_PreviousCandidate = 0x0100113e,
1500 Key_Mode_switch = 0x0100117e,
1504 Key_Kanji = 0x01001121,
1505 Key_Muhenkan = 0x01001122,
1507 Key_Henkan = 0x01001123,
1508 Key_Romaji = 0x01001124,
1509 Key_Hiragana = 0x01001125,
1510 Key_Katakana = 0x01001126,
1511 Key_Hiragana_Katakana = 0x01001127,
1512 Key_Zenkaku = 0x01001128,
1513 Key_Hankaku = 0x01001129,
1514 Key_Zenkaku_Hankaku = 0x0100112a,
1515 Key_Touroku = 0x0100112b,
1516 Key_Massyo = 0x0100112c,
1517 Key_Kana_Lock = 0x0100112d,
1518 Key_Kana_Shift = 0x0100112e,
1519 Key_Eisu_Shift = 0x0100112f,
1520 Key_Eisu_toggle = 0x01001130,
1521 # 783 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1522 Key_Hangul = 0x01001131,
1523 Key_Hangul_Start = 0x01001132,
1524 Key_Hangul_End = 0x01001133,
1525 Key_Hangul_Hanja = 0x01001134,
1526 Key_Hangul_Jamo = 0x01001135,
1527 Key_Hangul_Romaja = 0x01001136,
1529 Key_Hangul_Jeonja = 0x01001138,
1530 Key_Hangul_Banja = 0x01001139,
1531 Key_Hangul_PreHanja = 0x0100113a,
1532 Key_Hangul_PostHanja = 0x0100113b,
1536 Key_Hangul_Special = 0x0100113f,
1540 Key_Dead_Grave = 0x01001250,
1541 Key_Dead_Acute = 0x01001251,
1542 Key_Dead_Circumflex = 0x01001252,
1543 Key_Dead_Tilde = 0x01001253,
1544 Key_Dead_Macron = 0x01001254,
1545 Key_Dead_Breve = 0x01001255,
1546 Key_Dead_Abovedot = 0x01001256,
1547 Key_Dead_Diaeresis = 0x01001257,
1548 Key_Dead_Abovering = 0x01001258,
1549 Key_Dead_Doubleacute = 0x01001259,
1550 Key_Dead_Caron = 0x0100125a,
1551 Key_Dead_Cedilla = 0x0100125b,
1552 Key_Dead_Ogonek = 0x0100125c,
1553 Key_Dead_Iota = 0x0100125d,
1554 Key_Dead_Voiced_Sound = 0x0100125e,
1555 Key_Dead_Semivoiced_Sound = 0x0100125f,
1556 Key_Dead_Belowdot = 0x01001260,
1557 Key_Dead_Hook = 0x01001261,
1558 Key_Dead_Horn = 0x01001262,
1562 Key_Back = 0x01000061,
1563 Key_Forward = 0x01000062,
1564 Key_Stop = 0x01000063,
1565 Key_Refresh = 0x01000064,
1567 Key_VolumeDown = 0x01000070,
1568 Key_VolumeMute = 0x01000071,
1569 Key_VolumeUp = 0x01000072,
1570 Key_BassBoost = 0x01000073,
1571 Key_BassUp = 0x01000074,
1572 Key_BassDown = 0x01000075,
1573 Key_TrebleUp = 0x01000076,
1574 Key_TrebleDown = 0x01000077,
1576 Key_MediaPlay = 0x01000080,
1577 Key_MediaStop = 0x01000081,
1578 Key_MediaPrevious = 0x01000082,
1582 Key_MediaNext = 0x01000083,
1583 Key_MediaRecord = 0x01000084,
1585 Key_HomePage = 0x01000090,
1586 Key_Favorites = 0x01000091,
1587 Key_Search = 0x01000092,
1588 Key_Standby = 0x01000093,
1589 Key_OpenUrl = 0x01000094,
1591 Key_LaunchMail = 0x010000a0,
1592 Key_LaunchMedia = 0x010000a1,
1593 Key_Launch0 = 0x010000a2,
1594 Key_Launch1 = 0x010000a3,
1595 Key_Launch2 = 0x010000a4,
1596 Key_Launch3 = 0x010000a5,
1597 Key_Launch4 = 0x010000a6,
1598 Key_Launch5 = 0x010000a7,
1599 Key_Launch6 = 0x010000a8,
1600 Key_Launch7 = 0x010000a9,
1601 Key_Launch8 = 0x010000aa,
1602 Key_Launch9 = 0x010000ab,
1603 Key_LaunchA = 0x010000ac,
1604 Key_LaunchB = 0x010000ad,
1605 Key_LaunchC = 0x010000ae,
1606 Key_LaunchD = 0x010000af,
1607 Key_LaunchE = 0x010000b0,
1608 Key_LaunchF = 0x010000b1,
1610 Key_MediaLast = 0x0100ffff,
1613 Key_Select = 0x01010000,
1614 Key_Yes = 0x01010001,
1615 Key_No = 0x01010002,
1618 Key_Cancel = 0x01020001,
1619 Key_Printer = 0x01020002,
1620 Key_Execute = 0x01020003,
1621 Key_Sleep = 0x01020004,
1622 Key_Play = 0x01020005,
1623 Key_Zoom = 0x01020006,
1629 Key_Context1 = 0x01100000,
1630 Key_Context2 = 0x01100001,
1631 Key_Context3 = 0x01100002,
1632 Key_Context4 = 0x01100003,
1633 Key_Call = 0x01100004,
1634 Key_Hangup = 0x01100005,
1635 Key_Flip = 0x01100006,
1637 Key_unknown = 0x01ffffff
1672 SvgMiterJoin = 0x100,
1673 MPenJoinStyle = 0x1c0
1692 LinearGradientPattern,
1693 RadialGradientPattern,
1694 ConicalGradientPattern,
1700 # 1020 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1731 LastCursor = ClosedHandCursor,
1734 # 1073 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1744 enum AspectRatioMode {
1747 KeepAspectRatioByExpanding
1758 enum AnchorAttribute {
1763 enum DockWidgetArea {
1764 LeftDockWidgetArea = 0x1,
1765 RightDockWidgetArea = 0x2,
1766 TopDockWidgetArea = 0x4,
1767 BottomDockWidgetArea = 0x8,
1769 DockWidgetArea_Mask = 0xf,
1770 AllDockWidgetAreas = DockWidgetArea_Mask,
1771 NoDockWidgetArea = 0
1773 enum DockWidgetAreaSizes {
1774 NDockWidgetAreas = 4
1777 typedef QFlags<DockWidgetArea> DockWidgetAreas;
1780 LeftToolBarArea = 0x1,
1781 RightToolBarArea = 0x2,
1782 TopToolBarArea = 0x4,
1783 BottomToolBarArea = 0x8,
1785 ToolBarArea_Mask = 0xf,
1786 AllToolBarAreas = ToolBarArea_Mask,
1790 enum ToolBarAreaSizes {
1794 typedef QFlags<ToolBarArea> ToolBarAreas;
1795 # 1156 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1800 LocalDate = SystemLocaleDate,
1819 enum ScrollBarPolicy {
1824 # 1210 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
1825 enum CaseSensitivity {
1831 TopLeftCorner = 0x00000,
1832 TopRightCorner = 0x00001,
1833 BottomLeftCorner = 0x00002,
1834 BottomRightCorner = 0x00003
1843 enum ConnectionType {
1847 AutoCompatConnection,
1848 BlockingQueuedConnection
1851 enum ShortcutContext {
1867 enum ClipOperation {
1875 enum ItemSelectionMode {
1876 ContainsItemShape = 0x0,
1877 IntersectsItemShape = 0x1,
1878 ContainsItemBoundingRect = 0x2,
1879 IntersectsItemBoundingRect = 0x3
1882 enum TransformationMode {
1884 SmoothTransformation
1897 ActiveWindowFocusReason,
1899 ShortcutFocusReason,
1905 enum ContextMenuPolicy {
1913 enum InputMethodQuery {
1921 enum ToolButtonStyle {
1924 ToolButtonTextBesideIcon,
1925 ToolButtonTextUnderIcon
1928 enum LayoutDirection {
1938 TargetMoveAction = 0x8002,
1941 typedef QFlags<DropAction> DropActions;
1958 TextAlignmentRole = 7,
1959 BackgroundColorRole = 8,
1963 CheckStateRole = 10,
1965 AccessibleTextRole = 11,
1966 AccessibleDescriptionRole = 12,
1974 ItemIsSelectable = 1,
1976 ItemIsDragEnabled = 4,
1977 ItemIsDropEnabled = 8,
1978 ItemIsUserCheckable = 16,
1982 typedef QFlags<ItemFlag> ItemFlags;
1987 MatchStartsWith = 2,
1991 MatchFixedString = 8,
1992 MatchCaseSensitive = 16,
1996 typedef QFlags<MatchFlag> MatchFlags;
2003 typedef unsigned long HANDLE;
2007 typedef WindowFlags WFlags;
2009 enum WindowModality {
2015 enum TextInteractionFlag {
2016 NoTextInteraction = 0,
2017 TextSelectableByMouse = 1,
2018 TextSelectableByKeyboard = 2,
2019 LinksAccessibleByMouse = 4,
2020 LinksAccessibleByKeyboard = 8,
2023 TextEditorInteraction = TextSelectableByMouse | TextSelectableByKeyboard | TextEditable,
2024 TextBrowserInteraction = TextSelectableByMouse | LinksAccessibleByMouse | LinksAccessibleByKeyboard
2026 typedef QFlags<TextInteractionFlag> TextInteractionFlags;
2028 enum EventPriority {
2029 HighEventPriority = 1,
2030 NormalEventPriority = 0,
2031 LowEventPriority = -1
2039 inline QFlags<Qt::MouseButtons::enum_type> operator|(Qt::MouseButtons::enum_type f1, Qt::MouseButtons::enum_type f2) { return QFlags<Qt::MouseButtons::enum_type>(f1) | f2; } inline QFlags<Qt::MouseButtons::enum_type> operator|(Qt::MouseButtons::enum_type f1, QFlags<Qt::MouseButtons::enum_type> f2) { return f2 | f1; }
2040 inline QFlags<Qt::Orientations::enum_type> operator|(Qt::Orientations::enum_type f1, Qt::Orientations::enum_type f2) { return QFlags<Qt::Orientations::enum_type>(f1) | f2; } inline QFlags<Qt::Orientations::enum_type> operator|(Qt::Orientations::enum_type f1, QFlags<Qt::Orientations::enum_type> f2) { return f2 | f1; }
2041 inline QFlags<Qt::KeyboardModifiers::enum_type> operator|(Qt::KeyboardModifiers::enum_type f1, Qt::KeyboardModifiers::enum_type f2) { return QFlags<Qt::KeyboardModifiers::enum_type>(f1) | f2; } inline QFlags<Qt::KeyboardModifiers::enum_type> operator|(Qt::KeyboardModifiers::enum_type f1, QFlags<Qt::KeyboardModifiers::enum_type> f2) { return f2 | f1; }
2042 inline QFlags<Qt::WindowFlags::enum_type> operator|(Qt::WindowFlags::enum_type f1, Qt::WindowFlags::enum_type f2) { return QFlags<Qt::WindowFlags::enum_type>(f1) | f2; } inline QFlags<Qt::WindowFlags::enum_type> operator|(Qt::WindowFlags::enum_type f1, QFlags<Qt::WindowFlags::enum_type> f2) { return f2 | f1; }
2043 inline QFlags<Qt::Alignment::enum_type> operator|(Qt::Alignment::enum_type f1, Qt::Alignment::enum_type f2) { return QFlags<Qt::Alignment::enum_type>(f1) | f2; } inline QFlags<Qt::Alignment::enum_type> operator|(Qt::Alignment::enum_type f1, QFlags<Qt::Alignment::enum_type> f2) { return f2 | f1; }
2044 inline QFlags<Qt::ImageConversionFlags::enum_type> operator|(Qt::ImageConversionFlags::enum_type f1, Qt::ImageConversionFlags::enum_type f2) { return QFlags<Qt::ImageConversionFlags::enum_type>(f1) | f2; } inline QFlags<Qt::ImageConversionFlags::enum_type> operator|(Qt::ImageConversionFlags::enum_type f1, QFlags<Qt::ImageConversionFlags::enum_type> f2) { return f2 | f1; }
2045 inline QFlags<Qt::DockWidgetAreas::enum_type> operator|(Qt::DockWidgetAreas::enum_type f1, Qt::DockWidgetAreas::enum_type f2) { return QFlags<Qt::DockWidgetAreas::enum_type>(f1) | f2; } inline QFlags<Qt::DockWidgetAreas::enum_type> operator|(Qt::DockWidgetAreas::enum_type f1, QFlags<Qt::DockWidgetAreas::enum_type> f2) { return f2 | f1; }
2046 inline QFlags<Qt::ToolBarAreas::enum_type> operator|(Qt::ToolBarAreas::enum_type f1, Qt::ToolBarAreas::enum_type f2) { return QFlags<Qt::ToolBarAreas::enum_type>(f1) | f2; } inline QFlags<Qt::ToolBarAreas::enum_type> operator|(Qt::ToolBarAreas::enum_type f1, QFlags<Qt::ToolBarAreas::enum_type> f2) { return f2 | f1; }
2047 inline QFlags<Qt::WindowStates::enum_type> operator|(Qt::WindowStates::enum_type f1, Qt::WindowStates::enum_type f2) { return QFlags<Qt::WindowStates::enum_type>(f1) | f2; } inline QFlags<Qt::WindowStates::enum_type> operator|(Qt::WindowStates::enum_type f1, QFlags<Qt::WindowStates::enum_type> f2) { return f2 | f1; }
2048 inline QFlags<Qt::DropActions::enum_type> operator|(Qt::DropActions::enum_type f1, Qt::DropActions::enum_type f2) { return QFlags<Qt::DropActions::enum_type>(f1) | f2; } inline QFlags<Qt::DropActions::enum_type> operator|(Qt::DropActions::enum_type f1, QFlags<Qt::DropActions::enum_type> f2) { return f2 | f1; }
2049 inline QFlags<Qt::ItemFlags::enum_type> operator|(Qt::ItemFlags::enum_type f1, Qt::ItemFlags::enum_type f2) { return QFlags<Qt::ItemFlags::enum_type>(f1) | f2; } inline QFlags<Qt::ItemFlags::enum_type> operator|(Qt::ItemFlags::enum_type f1, QFlags<Qt::ItemFlags::enum_type> f2) { return f2 | f1; }
2050 inline QFlags<Qt::MatchFlags::enum_type> operator|(Qt::MatchFlags::enum_type f1, Qt::MatchFlags::enum_type f2) { return QFlags<Qt::MatchFlags::enum_type>(f1) | f2; } inline QFlags<Qt::MatchFlags::enum_type> operator|(Qt::MatchFlags::enum_type f1, QFlags<Qt::MatchFlags::enum_type> f2) { return f2 | f1; }
2051 inline QFlags<Qt::TextInteractionFlags::enum_type> operator|(Qt::TextInteractionFlags::enum_type f1, Qt::TextInteractionFlags::enum_type f2) { return QFlags<Qt::TextInteractionFlags::enum_type>(f1) | f2; } inline QFlags<Qt::TextInteractionFlags::enum_type> operator|(Qt::TextInteractionFlags::enum_type f1, QFlags<Qt::TextInteractionFlags::enum_type> f2) { return f2 | f1; }
2053 typedef bool (*qInternalCallback)(void **);
2057 enum PaintDeviceFlags {
2058 UnknownDevice = 0x00,
2065 FramebufferObject = 0x07,
2079 EventNotifyCallback,
2083 enum InternalFunction {
2084 CreateThreadForAdoption,
2087 SetCurrentThreadToMainThread,
2088 LastInternalFunction
2099 static bool registerCallback(Callback, qInternalCallback);
2100 static bool unregisterCallback(Callback, qInternalCallback);
2102 static bool activateCallbacks(Callback, void **);
2103 static bool callFunction(InternalFunction func, void **);
2105 # 1499 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/global/qnamespace.h"
2107 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qnamespace.h" 2
2108 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qobjectdefs.h" 2
2112 typedef QtValidLicenseForCoreModule QtCoreModule;
2117 # 133 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qobjectdefs.h"
2118 template <typename T>
2119 inline int qYouForgotTheQ_OBJECT_Macro(T, T) { return 0; }
2121 template <typename T1, typename T2>
2122 inline void qYouForgotTheQ_OBJECT_Macro(T1, T2) {}
2123 # 209 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qobjectdefs.h"
2127 class QMetaProperty;
2128 class QMetaClassInfo;
2131 class QGenericArgument
2134 inline QGenericArgument(const char *aName = 0, const void *aData = 0)
2135 : _data(aData), _name(aName) {}
2136 inline void *data() const { return const_cast<void *>(_data); }
2137 inline const char *name() const { return _name; }
2144 class QGenericReturnArgument: public QGenericArgument
2147 inline QGenericReturnArgument(const char *aName = 0, void *aData = 0)
2148 : QGenericArgument(aName, aData)
2153 class QArgument: public QGenericArgument
2156 inline QArgument(const char *aName, const T &aData)
2157 : QGenericArgument(aName, static_cast<const void *>(&aData))
2162 template <typename T>
2163 class QReturnArgument: public QGenericReturnArgument
2166 inline QReturnArgument(const char *aName, T &aData)
2167 : QGenericReturnArgument(aName, static_cast<void *>(&aData))
2173 const char *className() const;
2174 const QMetaObject *superClass() const;
2176 QObject *cast(QObject *obj) const;
2180 QString tr(const char *s, const char *c) const;
2181 QString trUtf8(const char *s, const char *c) const;
2182 QString tr(const char *s, const char *c, int n) const;
2183 QString trUtf8(const char *s, const char *c, int n) const;
2186 int methodOffset() const;
2187 int enumeratorOffset() const;
2188 int propertyOffset() const;
2189 int classInfoOffset() const;
2191 int methodCount() const;
2192 int enumeratorCount() const;
2193 int propertyCount() const;
2194 int classInfoCount() const;
2196 int indexOfMethod(const char *method) const;
2197 int indexOfSignal(const char *signal) const;
2198 int indexOfSlot(const char *slot) const;
2199 int indexOfEnumerator(const char *name) const;
2200 int indexOfProperty(const char *name) const;
2201 int indexOfClassInfo(const char *name) const;
2203 QMetaMethod method(int index) const;
2204 QMetaEnum enumerator(int index) const;
2205 QMetaProperty property(int index) const;
2206 QMetaClassInfo classInfo(int index) const;
2207 QMetaProperty userProperty() const;
2209 static bool checkConnectArgs(const char *signal, const char *method);
2210 static QByteArray normalizedSignature(const char *method);
2211 static QByteArray normalizedType(const char *type);
2214 static bool connect(const QObject *sender, int signal_index,
2215 const QObject *receiver, int method_index,
2216 int type = 0, int *types = 0);
2218 static bool disconnect(const QObject *sender, int signal_index,
2219 const QObject *receiver, int method_index);
2221 static void connectSlotsByName(QObject *o);
2224 static void activate(QObject *sender, int signal_index, void **argv);
2225 static void activate(QObject *sender, int from_signal_index, int to_signal_index, void **argv);
2226 static void activate(QObject *sender, const QMetaObject *, int local_signal_index, void **argv);
2227 static void activate(QObject *sender, const QMetaObject *, int from_local_signal_index, int to_local_signal_index, void **argv);
2229 static void addGuard(QObject **ptr);
2230 static void removeGuard(QObject **ptr);
2231 static void changeGuard(QObject **ptr, QObject *o);
2233 static bool invokeMethod(QObject *obj, const char *member,
2235 QGenericReturnArgument ret,
2236 QGenericArgument val0 = QGenericArgument(0),
2237 QGenericArgument val1 = QGenericArgument(),
2238 QGenericArgument val2 = QGenericArgument(),
2239 QGenericArgument val3 = QGenericArgument(),
2240 QGenericArgument val4 = QGenericArgument(),
2241 QGenericArgument val5 = QGenericArgument(),
2242 QGenericArgument val6 = QGenericArgument(),
2243 QGenericArgument val7 = QGenericArgument(),
2244 QGenericArgument val8 = QGenericArgument(),
2245 QGenericArgument val9 = QGenericArgument());
2247 static inline bool invokeMethod(QObject *obj, const char *member,
2248 QGenericReturnArgument ret,
2249 QGenericArgument val0 = QGenericArgument(0),
2250 QGenericArgument val1 = QGenericArgument(),
2251 QGenericArgument val2 = QGenericArgument(),
2252 QGenericArgument val3 = QGenericArgument(),
2253 QGenericArgument val4 = QGenericArgument(),
2254 QGenericArgument val5 = QGenericArgument(),
2255 QGenericArgument val6 = QGenericArgument(),
2256 QGenericArgument val7 = QGenericArgument(),
2257 QGenericArgument val8 = QGenericArgument(),
2258 QGenericArgument val9 = QGenericArgument())
2260 return invokeMethod(obj, member, Qt::AutoConnection, ret, val0, val1, val2, val3,
2261 val4, val5, val6, val7, val8, val9);
2264 static inline bool invokeMethod(QObject *obj, const char *member,
2265 Qt::ConnectionType type,
2266 QGenericArgument val0 = QGenericArgument(0),
2267 QGenericArgument val1 = QGenericArgument(),
2268 QGenericArgument val2 = QGenericArgument(),
2269 QGenericArgument val3 = QGenericArgument(),
2270 QGenericArgument val4 = QGenericArgument(),
2271 QGenericArgument val5 = QGenericArgument(),
2272 QGenericArgument val6 = QGenericArgument(),
2273 QGenericArgument val7 = QGenericArgument(),
2274 QGenericArgument val8 = QGenericArgument(),
2275 QGenericArgument val9 = QGenericArgument())
2277 return invokeMethod(obj, member, type, QGenericReturnArgument(), val0, val1, val2,
2278 val3, val4, val5, val6, val7, val8, val9);
2282 static inline bool invokeMethod(QObject *obj, const char *member,
2283 QGenericArgument val0 = QGenericArgument(0),
2284 QGenericArgument val1 = QGenericArgument(),
2285 QGenericArgument val2 = QGenericArgument(),
2286 QGenericArgument val3 = QGenericArgument(),
2287 QGenericArgument val4 = QGenericArgument(),
2288 QGenericArgument val5 = QGenericArgument(),
2289 QGenericArgument val6 = QGenericArgument(),
2290 QGenericArgument val7 = QGenericArgument(),
2291 QGenericArgument val8 = QGenericArgument(),
2292 QGenericArgument val9 = QGenericArgument())
2294 return invokeMethod(obj, member, Qt::AutoConnection, QGenericReturnArgument(), val0,
2295 val1, val2, val3, val4, val5, val6, val7, val8, val9);
2303 QueryPropertyDesignable,
2304 QueryPropertyScriptable,
2305 QueryPropertyStored,
2306 QueryPropertyEditable,
2315 const QMetaObject *superdata;
2316 const char *stringdata;
2318 const QMetaObject **extradata;
2322 inline const char *QMetaObject::className() const
2323 { return d.stringdata; }
2325 inline const QMetaObject *QMetaObject::superClass() const
2326 { return d.superdata; }
2334 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qobjectdefs.h" 2
2335 # 46 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qiodevice.h" 2
2337 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
2338 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h" 1
2339 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h"
2340 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qchar.h" 1
2341 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qchar.h" 1
2342 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qchar.h"
2343 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qglobal.h" 1
2344 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qchar.h" 2
2348 typedef QtValidLicenseForCoreModule QtCoreModule;
2355 inline explicit QLatin1Char(char c) : ch(c) {}
2356 inline const char toLatin1() const { return ch; }
2357 inline const ushort unicode() const { return ushort(uchar(ch)); }
2371 QChar(QLatin1Char ch);
2372 QChar(uchar c, uchar r);
2373 inline QChar(ushort rc) : ucs(rc){}
2377 enum SpecialCharacter {
2380 ReplacementCharacter = 0xfffd,
2381 ObjectReplacementCharacter = 0xfffc,
2382 ByteOrderMark = 0xfeff,
2383 ByteOrderSwapped = 0xfffe,
2391 ParagraphSeparator = 0x2029,
2392 LineSeparator = 0x2028
2394 QChar(SpecialCharacter sc);
2403 Mark_SpacingCombining,
2406 Number_DecimalDigit,
2412 Separator_Paragraph,
2426 Punctuation_Connector,
2430 Punctuation_InitialQuote,
2431 Punctuation_FinalQuote,
2439 Punctuation_Dask = Punctuation_Dash
2444 DirL, DirR, DirEN, DirES, DirET, DirAN, DirCS, DirB, DirS, DirWS, DirON,
2445 DirLRE, DirLRO, DirAL, DirRLE, DirRLO, DirPDF, DirNSM, DirBN
2476 OtherJoining, Dual, Right, Center
2481 Combining_BelowLeftAttached = 200,
2482 Combining_BelowAttached = 202,
2483 Combining_BelowRightAttached = 204,
2484 Combining_LeftAttached = 208,
2485 Combining_RightAttached = 210,
2486 Combining_AboveLeftAttached = 212,
2487 Combining_AboveAttached = 214,
2488 Combining_AboveRightAttached = 216,
2490 Combining_BelowLeft = 218,
2491 Combining_Below = 220,
2492 Combining_BelowRight = 222,
2493 Combining_Left = 224,
2494 Combining_Right = 226,
2495 Combining_AboveLeft = 228,
2496 Combining_Above = 230,
2497 Combining_AboveRight = 232,
2499 Combining_DoubleBelow = 233,
2500 Combining_DoubleAbove = 234,
2501 Combining_IotaSubscript = 240
2504 enum UnicodeVersion {
2518 Category category() const;
2519 Direction direction() const;
2520 Joining joining() const;
2521 bool hasMirrored() const;
2522 unsigned char combiningClass() const;
2524 QChar mirroredChar() const;
2525 QString decomposition() const;
2526 Decomposition decompositionTag() const;
2528 int digitValue() const;
2529 QChar toLower() const;
2530 QChar toUpper() const;
2531 QChar toTitleCase() const;
2532 QChar toCaseFolded() const;
2534 UnicodeVersion unicodeVersion() const;
2536 const char toAscii() const;
2537 inline const char toLatin1() const;
2538 inline const ushort unicode() const { return ucs; }
2542 inline ushort &unicode() { return ucs; }
2545 static QChar fromAscii(char c);
2546 static QChar fromLatin1(char c);
2548 inline bool isNull() const { return ucs == 0; }
2549 bool isPrint() const;
2550 bool isPunct() const;
2551 bool isSpace() const;
2552 bool isMark() const;
2553 bool isLetter() const;
2554 bool isNumber() const;
2555 bool isLetterOrNumber() const;
2556 bool isDigit() const;
2557 bool isSymbol() const;
2558 inline bool isLower() const { return category() == Letter_Lowercase; }
2559 inline bool isUpper() const { return category() == Letter_Uppercase; }
2560 inline bool isTitleCase() const { return category() == Letter_Titlecase; }
2562 inline bool isHighSurrogate() const {
2563 return ((ucs & 0xfc00) == 0xd800);
2565 inline bool isLowSurrogate() const {
2566 return ((ucs & 0xfc00) == 0xdc00);
2569 inline uchar cell() const { return uchar(ucs & 0xff); }
2570 inline uchar row() const { return uchar((ucs>>8)&0xff); }
2571 inline void setCell(uchar cell);
2572 inline void setRow(uchar row);
2574 static inline uint surrogateToUcs4(ushort high, ushort low) {
2575 return (uint(high)<<10) + low - 0x35fdc00;
2577 static inline uint surrogateToUcs4(QChar high, QChar low) {
2578 return (uint(high.ucs)<<10) + low.ucs - 0x35fdc00;
2580 static inline ushort highSurrogate(uint ucs4) {
2581 return (ucs4>>10) + 0xd7c0;
2583 static inline ushort lowSurrogate(uint ucs4) {
2584 return ucs4%0x400 + 0xdc00;
2587 static Category category(uint ucs4);
2588 static Category category(ushort ucs2);
2589 static Direction direction(uint ucs4);
2590 static Direction direction(ushort ucs2);
2591 static Joining joining(uint ucs4);
2592 static Joining joining(ushort ucs2);
2593 static unsigned char combiningClass(uint ucs4);
2594 static unsigned char combiningClass(ushort ucs2);
2596 static uint mirroredChar(uint ucs4);
2597 static ushort mirroredChar(ushort ucs2);
2598 static Decomposition decompositionTag(uint ucs4);
2600 static int digitValue(uint ucs4);
2601 static int digitValue(ushort ucs2);
2602 static uint toLower(uint ucs4);
2603 static ushort toLower(ushort ucs2);
2604 static uint toUpper(uint ucs4);
2605 static ushort toUpper(ushort ucs2);
2606 static uint toTitleCase(uint ucs4);
2607 static ushort toTitleCase(ushort ucs2);
2608 static uint toCaseFolded(uint ucs4);
2609 static ushort toCaseFolded(ushort ucs2);
2611 static UnicodeVersion unicodeVersion(uint ucs4);
2612 static UnicodeVersion unicodeVersion(ushort ucs2);
2614 static QString decomposition(uint ucs4);
2615 # 325 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qchar.h"
2624 template <> class QTypeInfo<QChar> { public: enum { isComplex = (((Q_MOVABLE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(QChar)>sizeof(void*)), isPointer = false, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "QChar"; } };
2626 inline QChar::QChar() : ucs(0) {}
2628 inline const char QChar::toLatin1() const { return ucs > 0xff ? '\0' : char(ucs); }
2629 inline QChar QChar::fromLatin1(char c) { return QChar(ushort(uchar(c))); }
2631 inline QChar::QChar(uchar c, uchar r) : ucs((r << 8) | c){}
2632 inline QChar::QChar(short rc) : ucs(ushort(rc)){}
2633 inline QChar::QChar(uint rc) : ucs(ushort(rc & 0xffff)){}
2634 inline QChar::QChar(int rc) : ucs(ushort(rc & 0xffff)){}
2635 inline QChar::QChar(SpecialCharacter s) : ucs(ushort(s)) {}
2636 inline QChar::QChar(QLatin1Char ch) : ucs(ch.unicode()) {}
2638 inline void QChar::setCell(uchar acell)
2639 { ucs = (ucs & 0xff00) + acell; }
2640 inline void QChar::setRow(uchar arow)
2641 { ucs = (ushort(arow)<<8) + (ucs&0xff); }
2643 inline bool operator==(QChar c1, QChar c2) { return c1.unicode() == c2.unicode(); }
2644 inline bool operator!=(QChar c1, QChar c2) { return c1.unicode() != c2.unicode(); }
2645 inline bool operator<=(QChar c1, QChar c2) { return c1.unicode() <= c2.unicode(); }
2646 inline bool operator>=(QChar c1, QChar c2) { return c1.unicode() >= c2.unicode(); }
2647 inline bool operator<(QChar c1, QChar c2) { return c1.unicode() < c2.unicode(); }
2648 inline bool operator>(QChar c1, QChar c2) { return c1.unicode() > c2.unicode(); }
2651 QDataStream &operator<<(QDataStream &, const QChar &);
2652 QDataStream &operator>>(QDataStream &, QChar &);
2656 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qchar.h" 2
2657 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h" 2
2658 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qbytearray.h" 1
2659 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h" 1
2660 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h"
2661 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qglobal.h" 1
2662 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h" 2
2663 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic.h" 1
2664 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/thread/qatomic.h" 1
2665 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/thread/qatomic.h"
2666 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic_generic.h" 1
2667 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/arch/qatomic_generic.h" 1
2668 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/arch/qatomic_generic.h"
2669 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qglobal.h" 1
2670 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/arch/qatomic_generic.h" 2
2674 inline int q_atomic_test_and_set_int(volatile int *ptr, int expected, int newval)
2676 if (*ptr == expected) {
2683 inline int q_atomic_test_and_set_acquire_int(volatile int *ptr, int expected, int newval)
2685 return q_atomic_test_and_set_int(ptr, expected, newval);
2688 inline int q_atomic_test_and_set_release_int(volatile int *ptr, int expected, int newval)
2690 return q_atomic_test_and_set_int(ptr, expected, newval);
2693 inline int q_atomic_test_and_set_ptr(volatile void *ptr, void *expected, void *newval)
2695 if (*reinterpret_cast<void * volatile *>(ptr) == expected) {
2696 *reinterpret_cast<void * volatile *>(ptr) = newval;
2702 inline int q_atomic_increment(volatile int *ptr)
2703 { return ++(*ptr); }
2705 inline int q_atomic_decrement(volatile int *ptr)
2706 { return --(*ptr); }
2708 inline int q_atomic_set_int(volatile int *ptr, int newval)
2710 register int ret = *ptr;
2715 inline void *q_atomic_set_ptr(volatile void *ptr, void *newval)
2717 register void *ret = *reinterpret_cast<void * volatile *>(ptr);
2718 *reinterpret_cast<void * volatile *>(ptr) = newval;
2722 inline int q_atomic_fetch_and_add_int(volatile int *ptr, int value)
2724 int originalValue = *ptr;
2726 return originalValue;
2729 inline int q_atomic_fetch_and_add_acquire_int(volatile int *ptr, int value)
2731 return q_atomic_fetch_and_add_int(ptr, value);
2734 inline int q_atomic_fetch_and_add_release_int(volatile int *ptr, int value)
2736 return q_atomic_fetch_and_add_int(ptr, value);
2740 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic_generic.h" 2
2741 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/thread/qatomic.h" 2
2745 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qglobal.h" 1
2746 # 48 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/thread/qatomic.h" 2
2750 typedef QtValidLicenseForCoreModule QtCoreModule;
2751 # 83 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/thread/qatomic.h"
2752 struct QBasicAtomic {
2755 void init(int x = 0)
2759 { return q_atomic_increment(&value) != 0; }
2762 { return q_atomic_decrement(&value) != 0; }
2764 inline bool operator==(int x) const
2765 { return value == x; }
2767 inline bool operator!=(int x) const
2768 { return value != x; }
2770 inline bool operator!() const
2771 { return value == 0; }
2773 inline operator int() const
2776 inline QBasicAtomic &operator=(int x)
2782 inline bool testAndSet(int expected, int newval)
2783 { return q_atomic_test_and_set_int(&value, expected, newval) != 0; }
2785 inline bool testAndSetAcquire(int expected, int newval)
2786 { return q_atomic_test_and_set_acquire_int(&value, expected, newval) != 0; }
2788 inline bool testAndSetRelease(int expected, int newval)
2789 { return q_atomic_test_and_set_release_int(&value, expected, newval) != 0; }
2791 inline int exchange(int newval)
2792 { return q_atomic_set_int(&value, newval); }
2794 inline int fetchAndAdd(int aValue)
2795 { return q_atomic_fetch_and_add_int(&value, aValue); }
2797 inline int fetchAndAddAcquire(int aValue)
2798 { return q_atomic_fetch_and_add_acquire_int(&value, aValue); }
2800 inline int fetchAndAddRelease(int aValue)
2801 { return q_atomic_fetch_and_add_release_int(&value, aValue); }
2804 template <typename T>
2805 struct QBasicAtomicPointer
2812 inline bool operator==(T *t) const
2813 { return value == t; }
2815 inline bool operator!=(T *t) const
2816 { return !operator==(t); }
2818 inline bool operator!() const
2819 { return operator==(0); }
2821 inline operator T *() const
2822 { return const_cast<T *>(value); }
2824 inline T *operator->() const
2825 { return const_cast<T *>(value); }
2827 inline QBasicAtomicPointer<T> &operator=(T *t)
2833 inline bool testAndSet(T *expected, T *newval)
2834 { return q_atomic_test_and_set_ptr(&value, expected, newval); }
2836 inline T *exchange(T * newval)
2837 { return static_cast<T *>(q_atomic_set_ptr(&value, newval)); }
2844 template <typename T>
2845 inline T qAtomicSetPtr(volatile T *ptr, T newval)
2846 { return static_cast<T>(q_atomic_set_ptr(ptr, newval)); }
2849 class QAtomic : public QBasicAtomic
2852 inline QAtomic(int x = 0)
2854 inline QAtomic(const QAtomic ©)
2857 inline QAtomic &operator=(int x)
2859 (void) QBasicAtomic::operator=(x);
2863 inline QAtomic &operator=(const QAtomic ©)
2865 (void) QBasicAtomic::operator=(copy);
2871 template <typename T>
2872 class QAtomicPointer : public QBasicAtomicPointer<T>
2875 inline QAtomicPointer(T *t = 0)
2877 inline QAtomicPointer(const QAtomicPointer<T> ©)
2880 inline QAtomicPointer<T> &operator=(T *t)
2882 (void) QBasicAtomicPointer<T>::operator=(t);
2886 inline QAtomicPointer<T> &operator=(const QAtomicPointer<T> ©)
2888 (void) QBasicAtomicPointer<T>::operator=(copy);
2892 # 233 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/thread/qatomic.h"
2893 template <typename T>
2894 inline void qAtomicAssign(T *&d, T *x)
2899 if (!d->ref.deref())
2903 # 255 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/thread/qatomic.h"
2904 template <typename T>
2905 inline void qAtomicDetach(T *&d)
2911 if (!x->ref.deref())
2916 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic.h" 2
2917 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h" 2
2919 # 1 "/usr/include/string.h" 1 3 4
2927 # 1 "/usr/include/gentoo-multilib/amd64/string.h" 1 3 4
2928 # 26 "/usr/include/gentoo-multilib/amd64/string.h" 3 4
2929 # 1 "/usr/include/features.h" 1 3 4
2937 # 1 "/usr/include/gentoo-multilib/amd64/features.h" 1 3 4
2938 # 322 "/usr/include/gentoo-multilib/amd64/features.h" 3 4
2939 # 1 "/usr/include/sys/cdefs.h" 1 3 4
2947 # 1 "/usr/include/gentoo-multilib/amd64/sys/cdefs.h" 1 3 4
2948 # 324 "/usr/include/gentoo-multilib/amd64/sys/cdefs.h" 3 4
2949 # 1 "/usr/include/bits/wordsize.h" 1 3 4
2957 # 1 "/usr/include/gentoo-multilib/amd64/bits/wordsize.h" 1 3 4
2958 # 9 "/usr/include/bits/wordsize.h" 2 3 4
2959 # 325 "/usr/include/gentoo-multilib/amd64/sys/cdefs.h" 2 3 4
2960 # 9 "/usr/include/sys/cdefs.h" 2 3 4
2961 # 323 "/usr/include/gentoo-multilib/amd64/features.h" 2 3 4
2962 # 345 "/usr/include/gentoo-multilib/amd64/features.h" 3 4
2963 # 1 "/usr/include/gnu/stubs.h" 1 3 4
2971 # 1 "/usr/include/gentoo-multilib/amd64/gnu/stubs.h" 1 3 4
2975 # 1 "/usr/include/bits/wordsize.h" 1 3 4
2983 # 1 "/usr/include/gentoo-multilib/amd64/bits/wordsize.h" 1 3 4
2984 # 9 "/usr/include/bits/wordsize.h" 2 3 4
2985 # 5 "/usr/include/gentoo-multilib/amd64/gnu/stubs.h" 2 3 4
2990 # 1 "/usr/include/gnu/stubs-64.h" 1 3 4
2994 # 1 "/usr/include/gentoo-multilib/amd64/gnu/stubs-64.h" 1 3 4
2995 # 5 "/usr/include/gnu/stubs-64.h" 2 3 4
2996 # 10 "/usr/include/gentoo-multilib/amd64/gnu/stubs.h" 2 3 4
2997 # 9 "/usr/include/gnu/stubs.h" 2 3 4
2998 # 346 "/usr/include/gentoo-multilib/amd64/features.h" 2 3 4
2999 # 9 "/usr/include/features.h" 2 3 4
3000 # 27 "/usr/include/gentoo-multilib/amd64/string.h" 2 3 4
3007 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
3008 # 34 "/usr/include/gentoo-multilib/amd64/string.h" 2 3 4
3013 extern void *memcpy (void *__restrict __dest,
3014 __const void *__restrict __src, size_t __n)
3015 throw () __attribute__ ((__nonnull__ (1, 2)));
3018 extern void *memmove (void *__dest, __const void *__src, size_t __n)
3019 throw () __attribute__ ((__nonnull__ (1, 2)));
3026 extern void *memccpy (void *__restrict __dest, __const void *__restrict __src,
3027 int __c, size_t __n)
3028 throw () __attribute__ ((__nonnull__ (1, 2)));
3034 extern void *memset (void *__s, int __c, size_t __n) throw () __attribute__ ((__nonnull__ (1)));
3037 extern int memcmp (__const void *__s1, __const void *__s2, size_t __n)
3038 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3041 extern void *memchr (__const void *__s, int __c, size_t __n)
3042 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
3048 extern void *rawmemchr (__const void *__s, int __c)
3049 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
3052 extern void *memrchr (__const void *__s, int __c, size_t __n)
3053 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
3059 extern char *strcpy (char *__restrict __dest, __const char *__restrict __src)
3060 throw () __attribute__ ((__nonnull__ (1, 2)));
3062 extern char *strncpy (char *__restrict __dest,
3063 __const char *__restrict __src, size_t __n)
3064 throw () __attribute__ ((__nonnull__ (1, 2)));
3067 extern char *strcat (char *__restrict __dest, __const char *__restrict __src)
3068 throw () __attribute__ ((__nonnull__ (1, 2)));
3070 extern char *strncat (char *__restrict __dest, __const char *__restrict __src,
3071 size_t __n) throw () __attribute__ ((__nonnull__ (1, 2)));
3074 extern int strcmp (__const char *__s1, __const char *__s2)
3075 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3077 extern int strncmp (__const char *__s1, __const char *__s2, size_t __n)
3078 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3081 extern int strcoll (__const char *__s1, __const char *__s2)
3082 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3084 extern size_t strxfrm (char *__restrict __dest,
3085 __const char *__restrict __src, size_t __n)
3086 throw () __attribute__ ((__nonnull__ (2)));
3093 # 1 "/usr/include/xlocale.h" 1 3 4
3101 # 1 "/usr/include/gentoo-multilib/amd64/xlocale.h" 1 3 4
3102 # 28 "/usr/include/gentoo-multilib/amd64/xlocale.h" 3 4
3103 typedef struct __locale_struct
3106 struct locale_data *__locales[13];
3109 const unsigned short int *__ctype_b;
3110 const int *__ctype_tolower;
3111 const int *__ctype_toupper;
3114 const char *__names[13];
3116 # 9 "/usr/include/xlocale.h" 2 3 4
3117 # 119 "/usr/include/gentoo-multilib/amd64/string.h" 2 3 4
3120 extern int strcoll_l (__const char *__s1, __const char *__s2, __locale_t __l)
3121 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3)));
3123 extern size_t strxfrm_l (char *__dest, __const char *__src, size_t __n,
3124 __locale_t __l) throw () __attribute__ ((__nonnull__ (2, 4)));
3129 extern char *strdup (__const char *__s)
3130 throw () __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
3137 extern char *strndup (__const char *__string, size_t __n)
3138 throw () __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
3139 # 165 "/usr/include/gentoo-multilib/amd64/string.h" 3 4
3142 extern char *strchr (__const char *__s, int __c)
3143 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
3145 extern char *strrchr (__const char *__s, int __c)
3146 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
3152 extern char *strchrnul (__const char *__s, int __c)
3153 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
3159 extern size_t strcspn (__const char *__s, __const char *__reject)
3160 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3163 extern size_t strspn (__const char *__s, __const char *__accept)
3164 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3166 extern char *strpbrk (__const char *__s, __const char *__accept)
3167 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3169 extern char *strstr (__const char *__haystack, __const char *__needle)
3170 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3174 extern char *strtok (char *__restrict __s, __const char *__restrict __delim)
3175 throw () __attribute__ ((__nonnull__ (2)));
3180 extern char *__strtok_r (char *__restrict __s,
3181 __const char *__restrict __delim,
3182 char **__restrict __save_ptr)
3183 throw () __attribute__ ((__nonnull__ (2, 3)));
3185 extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim,
3186 char **__restrict __save_ptr)
3187 throw () __attribute__ ((__nonnull__ (2, 3)));
3192 extern char *strcasestr (__const char *__haystack, __const char *__needle)
3193 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3200 extern void *memmem (__const void *__haystack, size_t __haystacklen,
3201 __const void *__needle, size_t __needlelen)
3202 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 3)));
3206 extern void *__mempcpy (void *__restrict __dest,
3207 __const void *__restrict __src, size_t __n)
3208 throw () __attribute__ ((__nonnull__ (1, 2)));
3209 extern void *mempcpy (void *__restrict __dest,
3210 __const void *__restrict __src, size_t __n)
3211 throw () __attribute__ ((__nonnull__ (1, 2)));
3217 extern size_t strlen (__const char *__s)
3218 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
3224 extern size_t strnlen (__const char *__string, size_t __maxlen)
3225 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
3231 extern char *strerror (int __errnum) throw ();
3233 # 281 "/usr/include/gentoo-multilib/amd64/string.h" 3 4
3234 extern char *strerror_r (int __errnum, char *__buf, size_t __buflen)
3235 throw () __attribute__ ((__nonnull__ (2)));
3241 extern char *strerror_l (int __errnum, __locale_t __l) throw ();
3247 extern void __bzero (void *__s, size_t __n) throw () __attribute__ ((__nonnull__ (1)));
3251 extern void bcopy (__const void *__src, void *__dest, size_t __n)
3252 throw () __attribute__ ((__nonnull__ (1, 2)));
3255 extern void bzero (void *__s, size_t __n) throw () __attribute__ ((__nonnull__ (1)));
3258 extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)
3259 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3262 extern char *index (__const char *__s, int __c)
3263 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
3266 extern char *rindex (__const char *__s, int __c)
3267 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
3271 extern int ffs (int __i) throw () __attribute__ ((__const__));
3276 extern int ffsl (long int __l) throw () __attribute__ ((__const__));
3278 __extension__ extern int ffsll (long long int __ll)
3279 throw () __attribute__ ((__const__));
3284 extern int strcasecmp (__const char *__s1, __const char *__s2)
3285 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3288 extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)
3289 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3295 extern int strcasecmp_l (__const char *__s1, __const char *__s2,
3297 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3)));
3299 extern int strncasecmp_l (__const char *__s1, __const char *__s2,
3300 size_t __n, __locale_t __loc)
3301 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 4)));
3307 extern char *strsep (char **__restrict __stringp,
3308 __const char *__restrict __delim)
3309 throw () __attribute__ ((__nonnull__ (1, 2)));
3314 extern int strverscmp (__const char *__s1, __const char *__s2)
3315 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
3318 extern char *strsignal (int __sig) throw ();
3321 extern char *__stpcpy (char *__restrict __dest, __const char *__restrict __src)
3322 throw () __attribute__ ((__nonnull__ (1, 2)));
3323 extern char *stpcpy (char *__restrict __dest, __const char *__restrict __src)
3324 throw () __attribute__ ((__nonnull__ (1, 2)));
3328 extern char *__stpncpy (char *__restrict __dest,
3329 __const char *__restrict __src, size_t __n)
3330 throw () __attribute__ ((__nonnull__ (1, 2)));
3331 extern char *stpncpy (char *__restrict __dest,
3332 __const char *__restrict __src, size_t __n)
3333 throw () __attribute__ ((__nonnull__ (1, 2)));
3336 extern char *strfry (char *__string) throw () __attribute__ ((__nonnull__ (1)));
3339 extern void *memfrob (void *__s, size_t __n) throw () __attribute__ ((__nonnull__ (1)));
3346 extern char *basename (__const char *__filename) throw () __attribute__ ((__nonnull__ (1)));
3347 # 432 "/usr/include/gentoo-multilib/amd64/string.h" 3 4
3349 # 9 "/usr/include/string.h" 2 3 4
3350 # 46 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h" 2
3351 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stdarg.h" 1 3 4
3352 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stdarg.h" 3 4
3353 typedef __builtin_va_list __gnuc_va_list;
3354 # 105 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stdarg.h" 3 4
3355 typedef __gnuc_va_list va_list;
3356 # 47 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h" 2
3364 typedef QtValidLicenseForCoreModule QtCoreModule;
3370 char *qstrdup(const char *);
3372 inline uint qstrlen(const char *str)
3373 { return str ? uint(strlen(str)) : 0; }
3375 inline uint qstrnlen(const char *str, uint maxlen)
3379 while (length < maxlen && *str++)
3385 char *qstrcpy(char *dst, const char *src);
3386 char *qstrncpy(char *dst, const char *src, uint len);
3388 int qstrcmp(const char *str1, const char *str2);
3390 inline int qstrncmp(const char *str1, const char *str2, uint len)
3392 return (str1 && str2) ? strncmp(str1, str2, len)
3393 : (str1 ? 1 : (str2 ? -1 : 0));
3395 int qstricmp(const char *, const char *);
3396 int qstrnicmp(const char *, const char *, uint len);
3399 int qvsnprintf(char *str, size_t n, const char *fmt, va_list ap);
3400 int qsnprintf(char *str, size_t n, const char *fmt, ...);
3401 # 107 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h"
3402 quint16 qChecksum(const char *s, uint len);
3407 template <typename T> class QList;
3412 inline QByteArray();
3413 QByteArray(const char *);
3414 QByteArray(const char *, int size);
3415 QByteArray(int size, char c);
3416 inline QByteArray(const QByteArray &);
3417 inline ~QByteArray();
3419 QByteArray &operator=(const QByteArray &);
3420 QByteArray &operator=(const char *str);
3422 inline int size() const;
3423 bool isEmpty() const;
3424 void resize(int size);
3426 QByteArray &fill(char c, int size = -1);
3428 int capacity() const;
3429 void reserve(int size);
3432 operator const char *() const;
3433 operator const void *() const;
3435 const char *data() const;
3436 inline const char *constData() const;
3437 inline void detach();
3438 bool isDetached() const;
3441 const char at(int i) const;
3442 const char operator[](int i) const;
3443 QByteRef operator[](int i);
3444 const char operator[](uint i) const;
3445 QByteRef operator[](uint i);
3447 int indexOf(char c, int from = 0) const;
3448 inline int indexOf(const char *c, int from = 0) const;
3449 int indexOf(const QByteArray &a, int from = 0) const;
3450 int lastIndexOf(char c, int from = -1) const;
3451 inline int lastIndexOf(const char *c, int from = -1) const;
3452 int lastIndexOf(const QByteArray &a, int from = -1) const;
3454 QBool contains(char c) const;
3455 QBool contains(const char *a) const;
3456 QBool contains(const QByteArray &a) const;
3457 int count(char c) const;
3458 int count(const char *a) const;
3459 int count(const QByteArray &a) const;
3461 QByteArray left(int len) const;
3462 QByteArray right(int len) const;
3463 QByteArray mid(int index, int len = -1) const;
3465 bool startsWith(const QByteArray &a) const;
3466 bool startsWith(char c) const;
3467 bool startsWith(const char *c) const;
3469 bool endsWith(const QByteArray &a) const;
3470 bool endsWith(char c) const;
3471 bool endsWith(const char *c) const;
3473 void truncate(int pos);
3476 QByteArray toLower() const;
3477 QByteArray toUpper() const;
3479 QByteArray trimmed() const;
3480 QByteArray simplified() const;
3481 QByteArray leftJustified(int width, char fill = ' ', bool truncate = false) const;
3482 QByteArray rightJustified(int width, char fill = ' ', bool truncate = false) const;
3483 # 196 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h"
3484 QByteArray &prepend(char c);
3485 QByteArray &prepend(const char *s);
3486 QByteArray &prepend(const QByteArray &a);
3487 QByteArray &append(char c);
3488 QByteArray &append(const char *s);
3489 QByteArray &append(const QByteArray &a);
3490 QByteArray &insert(int i, char c);
3491 QByteArray &insert(int i, const char *s);
3492 QByteArray &insert(int i, const QByteArray &a);
3493 QByteArray &remove(int index, int len);
3494 QByteArray &replace(int index, int len, const char *s);
3495 QByteArray &replace(int index, int len, const QByteArray &s);
3496 QByteArray &replace(char before, const char *after);
3497 QByteArray &replace(char before, const QByteArray &after);
3498 QByteArray &replace(const char *before, const char *after);
3499 QByteArray &replace(const QByteArray &before, const QByteArray &after);
3500 QByteArray &replace(const QByteArray &before, const char *after);
3501 QByteArray &replace(const char *before, const QByteArray &after);
3502 QByteArray &replace(char before, char after);
3503 QByteArray &operator+=(char c);
3504 QByteArray &operator+=(const char *s);
3505 QByteArray &operator+=(const QByteArray &a);
3507 QList<QByteArray> split(char sep) const;
3510 QByteArray &append(const QString &s);
3511 QByteArray &insert(int i, const QString &s);
3512 QByteArray &replace(const QString &before, const char *after);
3513 QByteArray &replace(char c, const QString &after);
3514 QByteArray &replace(const QString &before, const QByteArray &after);
3516 QByteArray &operator+=(const QString &s);
3517 int indexOf(const QString &s, int from = 0) const;
3518 int lastIndexOf(const QString &s, int from = -1) const;
3521 inline bool operator==(const QString &s2) const;
3522 inline bool operator!=(const QString &s2) const;
3523 inline bool operator<(const QString &s2) const;
3524 inline bool operator>(const QString &s2) const;
3525 inline bool operator<=(const QString &s2) const;
3526 inline bool operator>=(const QString &s2) const;
3529 short toShort(bool *ok = 0, int base = 10) const;
3530 ushort toUShort(bool *ok = 0, int base = 10) const;
3531 int toInt(bool *ok = 0, int base = 10) const;
3532 uint toUInt(bool *ok = 0, int base = 10) const;
3533 long toLong(bool *ok = 0, int base = 10) const;
3534 ulong toULong(bool *ok = 0, int base = 10) const;
3535 qlonglong toLongLong(bool *ok = 0, int base = 10) const;
3536 qulonglong toULongLong(bool *ok = 0, int base = 10) const;
3537 float toFloat(bool *ok = 0) const;
3538 double toDouble(bool *ok = 0) const;
3539 QByteArray toBase64() const;
3540 QByteArray toHex() const;
3542 QByteArray &setNum(short, int base = 10);
3543 QByteArray &setNum(ushort, int base = 10);
3544 QByteArray &setNum(int, int base = 10);
3545 QByteArray &setNum(uint, int base = 10);
3546 QByteArray &setNum(qlonglong, int base = 10);
3547 QByteArray &setNum(qulonglong, int base = 10);
3548 QByteArray &setNum(float, char f = 'g', int prec = 6);
3549 QByteArray &setNum(double, char f = 'g', int prec = 6);
3551 static QByteArray number(int, int base = 10);
3552 static QByteArray number(uint, int base = 10);
3553 static QByteArray number(qlonglong, int base = 10);
3554 static QByteArray number(qulonglong, int base = 10);
3555 static QByteArray number(double, char f = 'g', int prec = 6);
3556 static QByteArray fromRawData(const char *, int size);
3557 static QByteArray fromBase64(const QByteArray &base64);
3558 static QByteArray fromHex(const QByteArray &hexEncoded);
3560 typedef char *iterator;
3561 typedef const char *const_iterator;
3562 typedef iterator Iterator;
3563 typedef const_iterator ConstIterator;
3565 const_iterator begin() const;
3566 const_iterator constBegin() const;
3568 const_iterator end() const;
3569 const_iterator constEnd() const;
3572 typedef const char & const_reference;
3573 typedef char & reference;
3574 void push_back(char c);
3575 void push_back(const char *c);
3576 void push_back(const QByteArray &a);
3577 void push_front(char c);
3578 void push_front(const char *c);
3579 void push_front(const QByteArray &a);
3581 inline int count() const { return d->size; }
3582 int length() const { return d->size; }
3583 bool isNull() const;
3584 # 322 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h"
3586 operator QNoImplicitBoolCast() const;
3593 static Data shared_null;
3594 static Data shared_empty;
3596 QByteArray(Data *dd, int , int ) : d(dd) {}
3597 void realloc(int alloc);
3600 friend class QByteRef;
3601 friend class QString;
3603 typedef Data * DataPtr;
3604 inline DataPtr &data_ptr() { return d; }
3607 inline QByteArray::QByteArray(): d(&shared_null) { d->ref.ref(); }
3608 inline QByteArray::~QByteArray() { if (!d->ref.deref()) qFree(d); }
3609 inline int QByteArray::size() const
3611 inline const char QByteArray::at(int i) const
3612 { do {if(!(i >= 0 && i < size()))qt_assert("i >= 0 && i < size()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h",349);} while (0); return d->data[i]; }
3613 inline const char QByteArray::operator[](int i) const
3614 { do {if(!(i >= 0 && i < size()))qt_assert("i >= 0 && i < size()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h",351);} while (0); return d->data[i]; }
3615 inline const char QByteArray::operator[](uint i) const
3616 { do {if(!(i < uint(size())))qt_assert("i < uint(size())","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h",353);} while (0); return d->data[i]; }
3617 inline bool QByteArray::isEmpty() const
3618 { return d->size == 0; }
3619 inline QByteArray::operator const char *() const
3621 inline QByteArray::operator const void *() const
3623 inline char *QByteArray::data()
3624 { detach(); return d->data; }
3625 inline const char *QByteArray::data() const
3627 inline const char *QByteArray::constData() const
3629 inline void QByteArray::detach()
3630 { if (d->ref != 1 || d->data != d->array) realloc(d->size); }
3631 inline bool QByteArray::isDetached() const
3632 { return d->ref == 1; }
3633 inline QByteArray::QByteArray(const QByteArray &a) : d(a.d)
3640 inline int QByteArray::capacity() const
3641 { return d->alloc; }
3643 inline void QByteArray::reserve(int asize)
3644 { if (d->ref != 1 || asize > d->alloc) realloc(asize); }
3646 inline void QByteArray::squeeze()
3647 { if (d->size < d->alloc) realloc(d->size); }
3652 inline QByteRef(QByteArray &array, int idx)
3653 : a(array),i(idx) {}
3654 friend class QByteArray;
3656 inline operator const char() const
3657 { return i < a.d->size ? a.d->data[i] : 0; }
3658 inline QByteRef &operator=(char c)
3659 { if (a.d->ref != 1 || i >= a.d->size) a.expand(i);
3660 a.d->data[i] = c; return *this; }
3661 inline QByteRef &operator=(const QByteRef &c)
3662 { if (a.d->ref != 1 || i >= a.d->size) a.expand(i);
3663 a.d->data[i] = c.a.d->data[c.i]; return *this; }
3664 inline bool operator==(char c) const
3665 { return a.d->data[i] == c; }
3666 inline bool operator!=(char c) const
3667 { return a.d->data[i] != c; }
3668 inline bool operator>(char c) const
3669 { return a.d->data[i] > c; }
3670 inline bool operator>=(char c) const
3671 { return a.d->data[i] >= c; }
3672 inline bool operator<(char c) const
3673 { return a.d->data[i] < c; }
3674 inline bool operator<=(char c) const
3675 { return a.d->data[i] <= c; }
3678 inline QByteRef QByteArray::operator[](int i)
3679 { do {if(!(i >= 0))qt_assert("i >= 0","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h",416);} while (0); return QByteRef(*this, i); }
3680 inline QByteRef QByteArray::operator[](uint i)
3681 { return QByteRef(*this, i); }
3682 inline QByteArray::iterator QByteArray::begin()
3683 { detach(); return d->data; }
3684 inline QByteArray::const_iterator QByteArray::begin() const
3686 inline QByteArray::const_iterator QByteArray::constBegin() const
3688 inline QByteArray::iterator QByteArray::end()
3689 { detach(); return d->data + d->size; }
3690 inline QByteArray::const_iterator QByteArray::end() const
3691 { return d->data + d->size; }
3692 inline QByteArray::const_iterator QByteArray::constEnd() const
3693 { return d->data + d->size; }
3694 inline QByteArray &QByteArray::operator+=(char c)
3695 { return append(c); }
3696 inline QByteArray &QByteArray::operator+=(const char *s)
3697 { return append(s); }
3698 inline QByteArray &QByteArray::operator+=(const QByteArray &a)
3699 { return append(a); }
3700 inline void QByteArray::push_back(char c)
3702 inline void QByteArray::push_back(const char *c)
3704 inline void QByteArray::push_back(const QByteArray &a)
3706 inline void QByteArray::push_front(char c)
3708 inline void QByteArray::push_front(const char *c)
3710 inline void QByteArray::push_front(const QByteArray &a)
3712 inline QBool QByteArray::contains(const QByteArray &a) const
3713 { return QBool(indexOf(a) != -1); }
3714 inline QBool QByteArray::contains(char c) const
3715 { return QBool(indexOf(c) != -1); }
3716 inline bool operator==(const QByteArray &a1, const QByteArray &a2)
3717 { return (a1.size() == a2.size()) && (memcmp(a1, a2, a1.size())==0); }
3718 inline bool operator==(const QByteArray &a1, const char *a2)
3719 { return a2 ? strcmp(a1,a2) == 0 : a1.isEmpty(); }
3720 inline bool operator==(const char *a1, const QByteArray &a2)
3721 { return a1 ? strcmp(a1,a2) == 0 : a2.isEmpty(); }
3722 inline bool operator!=(const QByteArray &a1, const QByteArray &a2)
3723 { return !(a1==a2); }
3724 inline bool operator!=(const QByteArray &a1, const char *a2)
3725 { return a2 ? strcmp(a1,a2) != 0 : !a1.isEmpty(); }
3726 inline bool operator!=(const char *a1, const QByteArray &a2)
3727 { return a1 ? strcmp(a1,a2) != 0 : !a2.isEmpty(); }
3728 inline bool operator<(const QByteArray &a1, const QByteArray &a2)
3729 { return strcmp(a1, a2) < 0; }
3730 inline bool operator<(const QByteArray &a1, const char *a2)
3731 { return qstrcmp(a1, a2) < 0; }
3732 inline bool operator<(const char *a1, const QByteArray &a2)
3733 { return qstrcmp(a1, a2) < 0; }
3734 inline bool operator<=(const QByteArray &a1, const QByteArray &a2)
3735 { return strcmp(a1, a2) <= 0; }
3736 inline bool operator<=(const QByteArray &a1, const char *a2)
3737 { return qstrcmp(a1, a2) <= 0; }
3738 inline bool operator<=(const char *a1, const QByteArray &a2)
3739 { return qstrcmp(a1, a2) <= 0; }
3740 inline bool operator>(const QByteArray &a1, const QByteArray &a2)
3741 { return strcmp(a1, a2) > 0; }
3742 inline bool operator>(const QByteArray &a1, const char *a2)
3743 { return qstrcmp(a1, a2) > 0; }
3744 inline bool operator>(const char *a1, const QByteArray &a2)
3745 { return qstrcmp(a1, a2) > 0; }
3746 inline bool operator>=(const QByteArray &a1, const QByteArray &a2)
3747 { return strcmp(a1, a2) >= 0; }
3748 inline bool operator>=(const QByteArray &a1, const char *a2)
3749 { return qstrcmp(a1, a2) >= 0; }
3750 inline bool operator>=(const char *a1, const QByteArray &a2)
3751 { return qstrcmp(a1, a2) >= 0; }
3752 inline const QByteArray operator+(const QByteArray &a1, const QByteArray &a2)
3753 { return QByteArray(a1) += a2; }
3754 inline const QByteArray operator+(const QByteArray &a1, const char *a2)
3755 { return QByteArray(a1) += a2; }
3756 inline const QByteArray operator+(const QByteArray &a1, char a2)
3757 { return QByteArray(a1) += a2; }
3758 inline const QByteArray operator+(const char *a1, const QByteArray &a2)
3759 { return QByteArray(a1) += a2; }
3760 inline const QByteArray operator+(char a1, const QByteArray &a2)
3761 { return QByteArray(&a1, 1) += a2; }
3762 inline int QByteArray::indexOf(const char *c, int i) const
3763 { return indexOf(fromRawData(c, qstrlen(c)), i); }
3764 inline int QByteArray::lastIndexOf(const char *c, int i) const
3765 { return lastIndexOf(fromRawData(c, qstrlen(c)), i); }
3766 inline QBool QByteArray::contains(const char *c) const
3767 { return contains(fromRawData(c, qstrlen(c))); }
3768 inline QByteArray &QByteArray::replace(int index, int len, const char *c)
3769 { return replace(index, len, fromRawData(c, qstrlen(c))); }
3770 inline QByteArray &QByteArray::replace(char before, const char *c)
3771 { return replace(before, fromRawData(c, qstrlen(c))); }
3772 inline QByteArray &QByteArray::replace(const QByteArray &before, const char *c)
3773 { return replace(before, fromRawData(c, qstrlen(c))); }
3774 inline QByteArray &QByteArray::replace(const char *c, const QByteArray &after)
3775 { return replace(fromRawData(c, qstrlen(c)), after); }
3776 inline QByteArray &QByteArray::replace(const char *before, const char *after)
3777 { return replace(fromRawData(before, qstrlen(before)), fromRawData(after, qstrlen(after))); }
3779 inline QByteArray &QByteArray::setNum(short n, int base)
3780 { return setNum(qlonglong(n), base); }
3781 inline QByteArray &QByteArray::setNum(ushort n, int base)
3782 { return setNum(qulonglong(n), base); }
3783 inline QByteArray &QByteArray::setNum(int n, int base)
3784 { return setNum(qlonglong(n), base); }
3785 inline QByteArray &QByteArray::setNum(uint n, int base)
3786 { return setNum(qulonglong(n), base); }
3787 inline QByteArray &QByteArray::setNum(float n, char f, int prec)
3788 { return setNum(double(n),f,prec); }
3792 QDataStream &operator<<(QDataStream &, const QByteArray &);
3793 QDataStream &operator>>(QDataStream &, QByteArray &);
3794 # 542 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qbytearray.h"
3795 template <> class QTypeInfo<QByteArray> { public: enum { isComplex = (((Q_MOVABLE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(QByteArray)>sizeof(void*)), isPointer = false, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "QByteArray"; } };
3796 template <> inline bool qIsDetached<QByteArray>(QByteArray &t) { return t.isDetached(); } template <typename T> inline void qSwap(T &, T &); template <> inline void qSwap<QByteArray>(QByteArray &value1, QByteArray &value2) { const QByteArray::DataPtr t = value1.data_ptr(); value1.data_ptr() = value2.data_ptr(); value2.data_ptr() = t; }
3799 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qbytearray.h" 2
3800 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h" 2
3801 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic.h" 1
3802 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h" 2
3803 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qnamespace.h" 1
3804 # 46 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h" 2
3805 # 73 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h"
3808 typedef QtValidLicenseForCoreModule QtCoreModule;
3814 class QLatin1String;
3816 template <typename T> class QVector;
3822 QString(const QChar *unicode, int size);
3824 QString(int size, QChar c);
3825 inline QString(const QLatin1String &latin1);
3826 inline QString(const QString &);
3828 QString &operator=(QChar c);
3829 QString &operator=(const QString &);
3830 inline QString &operator=(const QLatin1String &);
3832 inline int size() const { return d->size; }
3833 inline int count() const { return d->size; }
3834 inline int length() const;
3835 inline bool isEmpty() const;
3836 void resize(int size);
3838 QString &fill(QChar c, int size = -1);
3839 void truncate(int pos);
3842 int capacity() const;
3843 inline void reserve(int size);
3844 inline void squeeze() { if (d->size < d->alloc) realloc(); d->capacity = 0;}
3846 inline const QChar *unicode() const;
3847 inline QChar *data();
3848 inline const QChar *data() const;
3849 inline const QChar *constData() const;
3851 inline void detach();
3852 inline bool isDetached() const;
3855 inline const QChar at(int i) const;
3856 const QChar operator[](int i) const;
3857 QCharRef operator[](int i);
3858 const QChar operator[](uint i) const;
3859 QCharRef operator[](uint i);
3861 QString arg(qlonglong a, int fieldwidth=0, int base=10,
3862 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3863 QString arg(qulonglong a, int fieldwidth=0, int base=10,
3864 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3865 QString arg(long a, int fieldwidth=0, int base=10,
3866 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3867 QString arg(ulong a, int fieldwidth=0, int base=10,
3868 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3869 QString arg(int a, int fieldWidth = 0, int base = 10,
3870 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3871 QString arg(uint a, int fieldWidth = 0, int base = 10,
3872 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3873 QString arg(short a, int fieldWidth = 0, int base = 10,
3874 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3875 QString arg(ushort a, int fieldWidth = 0, int base = 10,
3876 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3877 QString arg(double a, int fieldWidth = 0, char fmt = 'g', int prec = -1,
3878 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3879 QString arg(char a, int fieldWidth = 0,
3880 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3881 QString arg(QChar a, int fieldWidth = 0,
3882 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3883 QString arg(const QString &a, int fieldWidth = 0,
3884 const QChar &fillChar = QLatin1Char(' ')) const __attribute__ ((warn_unused_result));
3885 QString arg(const QString &a1, const QString &a2) const __attribute__ ((warn_unused_result));
3886 QString arg(const QString &a1, const QString &a2, const QString &a3) const __attribute__ ((warn_unused_result));
3887 QString arg(const QString &a1, const QString &a2, const QString &a3,
3888 const QString &a4) const __attribute__ ((warn_unused_result));
3889 QString arg(const QString &a1, const QString &a2, const QString &a3,
3890 const QString &a4, const QString &a5) const __attribute__ ((warn_unused_result));
3891 QString arg(const QString &a1, const QString &a2, const QString &a3,
3892 const QString &a4, const QString &a5, const QString &a6) const __attribute__ ((warn_unused_result));
3893 QString arg(const QString &a1, const QString &a2, const QString &a3,
3894 const QString &a4, const QString &a5, const QString &a6,
3895 const QString &a7) const __attribute__ ((warn_unused_result));
3896 QString arg(const QString &a1, const QString &a2, const QString &a3,
3897 const QString &a4, const QString &a5, const QString &a6,
3898 const QString &a7, const QString &a8) const __attribute__ ((warn_unused_result));
3899 QString arg(const QString &a1, const QString &a2, const QString &a3,
3900 const QString &a4, const QString &a5, const QString &a6,
3901 const QString &a7, const QString &a8, const QString &a9) const __attribute__ ((warn_unused_result));
3903 QString &vsprintf(const char *format, va_list ap);
3904 QString &sprintf(const char *format, ...)
3906 __attribute__ ((format (printf, 2, 3)))
3910 int indexOf(QChar c, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3911 int indexOf(const QString &s, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3912 int lastIndexOf(QChar c, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3913 int lastIndexOf(const QString &s, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3915 inline QBool contains(QChar c, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3916 inline QBool contains(const QString &s, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3917 int count(QChar c, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3918 int count(const QString &s, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3921 int indexOf(const QRegExp &, int from = 0) const;
3922 int lastIndexOf(const QRegExp &, int from = -1) const;
3923 inline QBool contains(const QRegExp &rx) const { return QBool(indexOf(rx) != -1); }
3924 int count(const QRegExp &) const;
3928 SectionDefault = 0x00,
3929 SectionSkipEmpty = 0x01,
3930 SectionIncludeLeadingSep = 0x02,
3931 SectionIncludeTrailingSep = 0x04,
3932 SectionCaseInsensitiveSeps = 0x08
3934 typedef QFlags<SectionFlag> SectionFlags;
3936 QString section(QChar sep, int start, int end = -1, SectionFlags flags = SectionDefault) const;
3937 QString section(const QString &in_sep, int start, int end = -1, SectionFlags flags = SectionDefault) const;
3939 QString section(const QRegExp ®, int start, int end = -1, SectionFlags flags = SectionDefault) const;
3942 QString left(int n) const __attribute__ ((warn_unused_result));
3943 QString right(int n) const __attribute__ ((warn_unused_result));
3944 QString mid(int position, int n = -1) const __attribute__ ((warn_unused_result));
3946 bool startsWith(const QString &s, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3947 bool startsWith(const QLatin1String &s, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3948 bool startsWith(const QChar &c, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3949 bool endsWith(const QString &s, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3950 bool endsWith(const QLatin1String &s, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3951 bool endsWith(const QChar &c, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
3953 QString leftJustified(int width, QChar fill = QLatin1Char(' '), bool trunc = false) const __attribute__ ((warn_unused_result));
3954 QString rightJustified(int width, QChar fill = QLatin1Char(' '), bool trunc = false) const __attribute__ ((warn_unused_result));
3956 QString toLower() const __attribute__ ((warn_unused_result));
3957 QString toUpper() const __attribute__ ((warn_unused_result));
3958 QString toCaseFolded() const __attribute__ ((warn_unused_result));
3960 QString trimmed() const __attribute__ ((warn_unused_result));
3961 QString simplified() const __attribute__ ((warn_unused_result));
3963 QString &insert(int i, QChar c);
3964 QString &insert(int i, const QChar *uc, int len);
3965 inline QString &insert(int i, const QString &s) { return insert(i, s.constData(), s.length()); }
3966 QString &insert(int i, const QLatin1String &s);
3967 QString &append(QChar c);
3968 QString &append(const QString &s);
3969 QString &append(const QLatin1String &s);
3970 inline QString &prepend(QChar c) { return insert(0, c); }
3971 inline QString &prepend(const QString &s) { return insert(0, s); }
3972 inline QString &prepend(const QLatin1String &s) { return insert(0, s); }
3973 inline QString &operator+=(QChar c) { return append(c); }
3974 inline QString &operator+=(QChar::SpecialCharacter c) { return append(QChar(c)); }
3975 inline QString &operator+=(const QString &s) { return append(s); }
3976 inline QString &operator+=(const QLatin1String &s) { return append(s); }
3978 QString &remove(int i, int len);
3979 QString &remove(QChar c, Qt::CaseSensitivity cs = Qt::CaseSensitive);
3980 QString &remove(const QString &s, Qt::CaseSensitivity cs = Qt::CaseSensitive);
3981 QString &replace(int i, int len, QChar after);
3982 QString &replace(int i, int len, const QChar *s, int slen);
3983 QString &replace(int i, int len, const QString &after);
3984 QString &replace(QChar before, QChar after, Qt::CaseSensitivity cs = Qt::CaseSensitive);
3985 QString &replace(QChar c, const QString &after, Qt::CaseSensitivity cs = Qt::CaseSensitive);
3986 QString &replace(const QString &before, const QString &after,
3987 Qt::CaseSensitivity cs = Qt::CaseSensitive);
3989 QString &replace(const QRegExp &rx, const QString &after);
3990 inline QString &remove(const QRegExp &rx)
3991 { return replace(rx, QString()); }
3994 enum SplitBehavior { KeepEmptyParts, SkipEmptyParts };
3996 QStringList split(const QString &sep, SplitBehavior behavior = KeepEmptyParts,
3997 Qt::CaseSensitivity cs = Qt::CaseSensitive) const __attribute__ ((warn_unused_result));
3998 QStringList split(const QChar &sep, SplitBehavior behavior = KeepEmptyParts,
3999 Qt::CaseSensitivity cs = Qt::CaseSensitive) const __attribute__ ((warn_unused_result));
4001 QStringList split(const QRegExp &sep, SplitBehavior behavior = KeepEmptyParts) const __attribute__ ((warn_unused_result));
4004 enum NormalizationForm {
4005 NormalizationForm_D,
4006 NormalizationForm_C,
4007 NormalizationForm_KD,
4008 NormalizationForm_KC
4010 QString normalized(NormalizationForm mode) const __attribute__ ((warn_unused_result));
4011 QString normalized(NormalizationForm mode, QChar::UnicodeVersion version) const __attribute__ ((warn_unused_result));
4013 const ushort *utf16() const;
4015 QByteArray toAscii() const __attribute__ ((warn_unused_result));
4016 QByteArray toLatin1() const __attribute__ ((warn_unused_result));
4017 QByteArray toUtf8() const __attribute__ ((warn_unused_result));
4018 QByteArray toLocal8Bit() const __attribute__ ((warn_unused_result));
4019 QVector<uint> toUcs4() const __attribute__ ((warn_unused_result));
4021 static QString fromAscii(const char *, int size = -1);
4022 static QString fromLatin1(const char *, int size = -1);
4023 static QString fromUtf8(const char *, int size = -1);
4024 static QString fromLocal8Bit(const char *, int size = -1);
4025 static QString fromUtf16(const ushort *, int size = -1);
4026 static QString fromUcs4(const uint *, int size = -1);
4027 static QString fromRawData(const QChar *, int size);
4029 int toWCharArray(wchar_t *array) const;
4030 static QString fromWCharArray(const wchar_t *, int size = -1);
4032 QString &setUnicode(const QChar *unicode, int size);
4033 inline QString &setUtf16(const ushort *utf16, int size);
4036 int compare(const QString &s) const;
4037 int compare(const QString &s, Qt::CaseSensitivity cs) const;
4039 int compare(const QLatin1String &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
4042 static inline int compare(const QString &s1, const QString &s2)
4043 { return s1.compare(s2); }
4044 static inline int compare(const QString &s1, const QString &s2, Qt::CaseSensitivity cs)
4045 { return s1.compare(s2, cs); }
4047 static inline int compare(const QString& s1, const QLatin1String &s2,
4048 Qt::CaseSensitivity cs = Qt::CaseSensitive)
4049 { return s1.compare(s2, cs); }
4050 static inline int compare(const QLatin1String& s1, const QString &s2,
4051 Qt::CaseSensitivity cs = Qt::CaseSensitive)
4052 { return -s2.compare(s1, cs); }
4054 int localeAwareCompare(const QString& s) const;
4055 static int localeAwareCompare(const QString& s1, const QString& s2)
4056 { return s1.localeAwareCompare(s2); }
4058 short toShort(bool *ok=0, int base=10) const;
4059 ushort toUShort(bool *ok=0, int base=10) const;
4060 int toInt(bool *ok=0, int base=10) const;
4061 uint toUInt(bool *ok=0, int base=10) const;
4062 long toLong(bool *ok=0, int base=10) const;
4063 ulong toULong(bool *ok=0, int base=10) const;
4064 qlonglong toLongLong(bool *ok=0, int base=10) const;
4065 qulonglong toULongLong(bool *ok=0, int base=10) const;
4066 float toFloat(bool *ok=0) const;
4067 double toDouble(bool *ok=0) const;
4069 QString &setNum(short, int base=10);
4070 QString &setNum(ushort, int base=10);
4071 QString &setNum(int, int base=10);
4072 QString &setNum(uint, int base=10);
4073 QString &setNum(long, int base=10);
4074 QString &setNum(ulong, int base=10);
4075 QString &setNum(qlonglong, int base=10);
4076 QString &setNum(qulonglong, int base=10);
4077 QString &setNum(float, char f='g', int prec=6);
4078 QString &setNum(double, char f='g', int prec=6);
4080 static QString number(int, int base=10);
4081 static QString number(uint, int base=10);
4082 static QString number(long, int base=10);
4083 static QString number(ulong, int base=10);
4084 static QString number(qlonglong, int base=10);
4085 static QString number(qulonglong, int base=10);
4086 static QString number(double, char f='g', int prec=6);
4088 bool operator==(const QString &s) const;
4089 bool operator<(const QString &s) const;
4090 inline bool operator>(const QString &s) const { return s < *this; }
4091 inline bool operator!=(const QString &s) const { return !operator==(s); }
4092 inline bool operator<=(const QString &s) const { return !operator>(s); }
4093 inline bool operator>=(const QString &s) const { return !operator<(s); }
4095 bool operator==(const QLatin1String &s) const;
4096 bool operator<(const QLatin1String &s) const;
4097 bool operator>(const QLatin1String &s) const;
4098 inline bool operator!=(const QLatin1String &s) const { return !operator==(s); }
4099 inline bool operator<=(const QLatin1String &s) const { return !operator>(s); }
4100 inline bool operator>=(const QLatin1String &s) const { return !operator<(s); }
4104 inline QString(const char *ch) : d(fromAscii_helper(ch))
4106 inline QString(const QByteArray &a)
4107 : d(fromAscii_helper(a.constData(), qstrnlen(a.constData(), a.size())))
4109 inline QString &operator=(const char *ch)
4110 { return (*this = fromAscii(ch)); }
4111 inline QString &operator=(const QByteArray &a)
4112 { return (*this = fromAscii(a.constData(), qstrnlen(a.constData(), a.size()))); }
4113 inline QString &operator=(char c)
4114 { return (*this = QChar::fromAscii(c)); }
4117 inline QString &prepend(const char *s)
4118 { return prepend(QString::fromAscii(s)); }
4119 inline QString &prepend(const QByteArray &s)
4120 { return prepend(QString::fromAscii(s.constData(), qstrnlen(s.constData(), s.size()))); }
4121 inline QString &append(const char *s)
4122 { return append(QString::fromAscii(s)); }
4123 inline QString &append(const QByteArray &s)
4124 { return append(QString::fromAscii(s.constData(), qstrnlen(s.constData(), s.size()))); }
4125 inline QString &operator+=(const char *s)
4126 { return append(QString::fromAscii(s)); }
4127 inline QString &operator+=(const QByteArray &s)
4128 { return append(QString::fromAscii(s.constData(), qstrnlen(s.constData(), s.size()))); }
4129 inline QString &operator+=(char c)
4130 { return append(QChar::fromAscii(c)); }
4132 inline bool operator==(const char *s) const;
4133 inline bool operator!=(const char *s) const;
4134 inline bool operator<(const char *s) const;
4135 inline bool operator<=(const char *s2) const;
4136 inline bool operator>(const char *s2) const;
4137 inline bool operator>=(const char *s2) const;
4139 inline bool operator==(const QByteArray &s) const;
4140 inline bool operator!=(const QByteArray &s) const;
4141 inline bool operator<(const QByteArray &s) const
4142 { return *this < QString::fromAscii(s.constData(), s.size()); }
4143 inline bool operator>(const QByteArray &s) const
4144 { return *this > QString::fromAscii(s.constData(), s.size()); }
4145 inline bool operator<=(const QByteArray &s) const
4146 { return *this <= QString::fromAscii(s.constData(), s.size()); }
4147 inline bool operator>=(const QByteArray &s) const
4148 { return *this >= QString::fromAscii(s.constData(), s.size()); }
4151 typedef QChar *iterator;
4152 typedef const QChar *const_iterator;
4153 typedef iterator Iterator;
4154 typedef const_iterator ConstIterator;
4156 const_iterator begin() const;
4157 const_iterator constBegin() const;
4159 const_iterator end() const;
4160 const_iterator constEnd() const;
4162 inline QString &inline_append(QChar ch) {
4163 if (d->ref != 1 || d->size + 1 > d->alloc)
4164 realloc(grow(d->size + 1));
4165 d->data[d->size++] = ch.unicode();
4166 d->data[d->size] = '\0';
4171 inline void push_back(QChar c) { append(c); }
4172 inline void push_back(const QString &s) { append(s); }
4173 inline void push_front(QChar c) { prepend(c); }
4174 inline void push_front(const QString &s) { prepend(s); }
4175 # 458 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h"
4177 static const Null null;
4178 inline QString(const Null &): d(&shared_null) { d->ref.ref(); }
4179 inline QString &operator=(const Null &) { *this = QString(); return *this; }
4180 inline bool isNull() const { return d == &shared_null; }
4181 # 541 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h"
4182 bool isSimpleText() const { if (!d->clean) updateProperties(); return d->simpletext; }
4183 bool isRightToLeft() const { if (!d->clean) updateProperties(); return d->righttoleft; }
4186 # 554 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h"
4192 ushort simpletext : 1;
4193 ushort righttoleft : 1;
4194 ushort asciiCache : 1;
4195 ushort capacity : 1;
4196 ushort reserved : 11;
4199 static Data shared_null;
4200 static Data shared_empty;
4202 QString(Data *dd, int ) : d(dd) {}
4206 static int grow(int);
4207 static void free(Data *);
4209 void realloc(int alloc);
4211 void updateProperties() const;
4212 QString multiArg(int numArgs, const QString **args) const;
4213 static Data *fromLatin1_helper(const char *str, int size = -1);
4214 static Data *fromAscii_helper(const char *str, int size = -1);
4215 friend class QCharRef;
4216 friend class QTextCodec;
4217 friend class QStringRef;
4218 friend inline bool qStringComparisonHelper(const QString &s1, const char *s2);
4219 friend inline bool qStringComparisonHelper(const QStringRef &s1, const char *s2);
4221 typedef Data * DataPtr;
4222 inline DataPtr &data_ptr() { return d; }
4229 inline explicit QLatin1String(const char *s) : chars(s) {}
4230 inline QLatin1String &operator=(const QLatin1String &other)
4231 { chars = other.chars; return *this; }
4233 inline const char *latin1() const { return chars; }
4235 inline bool operator==(const QString &s) const
4236 { return s == *this; }
4237 inline bool operator!=(const QString &s) const
4238 { return s != *this; }
4239 inline bool operator>(const QString &s) const
4240 { return s < *this; }
4241 inline bool operator<(const QString &s) const
4242 { return s > *this; }
4243 inline bool operator>=(const QString &s) const
4244 { return s <= *this; }
4245 inline bool operator<=(const QString &s) const
4246 { return s >= *this; }
4248 inline bool operator==(const char *s) const
4249 { return QString::fromAscii(s) == *this; }
4250 inline bool operator!=(const char *s) const
4251 { return QString::fromAscii(s) != *this; }
4252 inline bool operator<(const char *s) const
4253 { return QString::fromAscii(s) > *this; }
4254 inline bool operator>(const char *s) const
4255 { return QString::fromAscii(s) < *this; }
4256 inline bool operator<=(const char *s) const
4257 { return QString::fromAscii(s) >= *this; }
4258 inline bool operator>=(const char *s) const
4259 { return QString::fromAscii(s) <= *this; }
4266 inline QString::QString(const QLatin1String &latin1) : d(fromLatin1_helper(latin1.latin1()))
4268 inline int QString::length() const
4270 inline const QChar QString::at(int i) const
4271 { do {if(!(i >= 0 && i < size()))qt_assert("i >= 0 && i < size()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h",638);} while (0); return d->data[i]; }
4272 inline const QChar QString::operator[](int i) const
4273 { do {if(!(i >= 0 && i < size()))qt_assert("i >= 0 && i < size()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h",640);} while (0); return d->data[i]; }
4274 inline const QChar QString::operator[](uint i) const
4275 { do {if(!(i < uint(size())))qt_assert("i < uint(size())","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h",642);} while (0); return d->data[i]; }
4276 inline bool QString::isEmpty() const
4277 { return d->size == 0; }
4278 inline const QChar *QString::unicode() const
4279 { return reinterpret_cast<const QChar*>(d->data); }
4280 inline const QChar *QString::data() const
4281 { return reinterpret_cast<const QChar*>(d->data); }
4282 inline QChar *QString::data()
4283 { detach(); return reinterpret_cast<QChar*>(d->data); }
4284 inline const QChar *QString::constData() const
4285 { return reinterpret_cast<const QChar*>(d->data); }
4286 inline void QString::detach()
4287 { if (d->ref != 1 || d->data != d->array) realloc(); }
4288 inline bool QString::isDetached() const
4289 { return d->ref == 1; }
4290 inline QString &QString::operator=(const QLatin1String &s)
4292 *this = fromLatin1(s.latin1());
4295 inline void QString::clear()
4296 { if (!isNull()) *this = QString(); }
4297 inline QString::QString(const QString &other) : d(other.d)
4298 { do {if(!(&other != this))qt_assert("&other != this","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h",665);} while (0); d->ref.ref(); }
4299 inline int QString::capacity() const
4300 { return d->alloc; }
4301 inline QString &QString::setNum(short n, int base)
4302 { return setNum(qlonglong(n), base); }
4303 inline QString &QString::setNum(ushort n, int base)
4304 { return setNum(qulonglong(n), base); }
4305 inline QString &QString::setNum(int n, int base)
4306 { return setNum(qlonglong(n), base); }
4307 inline QString &QString::setNum(uint n, int base)
4308 { return setNum(qulonglong(n), base); }
4309 inline QString &QString::setNum(long n, int base)
4310 { return setNum(qlonglong(n), base); }
4311 inline QString &QString::setNum(ulong n, int base)
4312 { return setNum(qulonglong(n), base); }
4313 inline QString &QString::setNum(float n, char f, int prec)
4314 { return setNum(double(n),f,prec); }
4315 inline QString QString::arg(int a, int fieldWidth, int base, const QChar &fillChar) const
4316 { return arg(qlonglong(a), fieldWidth, base, fillChar); }
4317 inline QString QString::arg(uint a, int fieldWidth, int base, const QChar &fillChar) const
4318 { return arg(qulonglong(a), fieldWidth, base, fillChar); }
4319 inline QString QString::arg(long a, int fieldWidth, int base, const QChar &fillChar) const
4320 { return arg(qlonglong(a), fieldWidth, base, fillChar); }
4321 inline QString QString::arg(ulong a, int fieldWidth, int base, const QChar &fillChar) const
4322 { return arg(qulonglong(a), fieldWidth, base, fillChar); }
4323 inline QString QString::arg(short a, int fieldWidth, int base, const QChar &fillChar) const
4324 { return arg(qlonglong(a), fieldWidth, base, fillChar); }
4325 inline QString QString::arg(ushort a, int fieldWidth, int base, const QChar &fillChar) const
4326 { return arg(qulonglong(a), fieldWidth, base, fillChar); }
4327 inline QString QString::arg(const QString &a1, const QString &a2) const
4328 { const QString *args[2] = { &a1, &a2 }; return multiArg(2, args); }
4329 inline QString QString::arg(const QString &a1, const QString &a2, const QString &a3) const
4330 { const QString *args[3] = { &a1, &a2, &a3 }; return multiArg(3, args); }
4331 inline QString QString::arg(const QString &a1, const QString &a2, const QString &a3,
4332 const QString &a4) const
4333 { const QString *args[4] = { &a1, &a2, &a3, &a4 }; return multiArg(4, args); }
4334 inline QString QString::arg(const QString &a1, const QString &a2, const QString &a3,
4335 const QString &a4, const QString &a5) const
4336 { const QString *args[5] = { &a1, &a2, &a3, &a4, &a5 }; return multiArg(5, args); }
4337 inline QString QString::arg(const QString &a1, const QString &a2, const QString &a3,
4338 const QString &a4, const QString &a5, const QString &a6) const
4339 { const QString *args[6] = { &a1, &a2, &a3, &a4, &a5, &a6 }; return multiArg(6, args); }
4340 inline QString QString::arg(const QString &a1, const QString &a2, const QString &a3,
4341 const QString &a4, const QString &a5, const QString &a6,
4342 const QString &a7) const
4343 { const QString *args[7] = { &a1, &a2, &a3, &a4, &a5, &a6, &a7 }; return multiArg(7, args); }
4344 inline QString QString::arg(const QString &a1, const QString &a2, const QString &a3,
4345 const QString &a4, const QString &a5, const QString &a6,
4346 const QString &a7, const QString &a8) const
4347 { const QString *args[8] = { &a1, &a2, &a3, &a4, &a5, &a6, &a7, &a8 }; return multiArg(8, args); }
4348 inline QString QString::arg(const QString &a1, const QString &a2, const QString &a3,
4349 const QString &a4, const QString &a5, const QString &a6,
4350 const QString &a7, const QString &a8, const QString &a9) const
4351 { const QString *args[9] = { &a1, &a2, &a3, &a4, &a5, &a6, &a7, &a8, &a9 }; return multiArg(9, args); }
4353 inline QString QString::section(QChar asep, int astart, int aend, SectionFlags aflags) const
4354 { return section(QString(asep), astart, aend, aflags); }
4360 inline QCharRef(QString &str, int idx)
4362 friend class QString;
4368 inline operator QChar() const
4369 { return i < s.d->size ? s.d->data[i] : 0; }
4370 inline QCharRef &operator=(const QChar &c)
4371 { if (s.d->ref != 1 || i >= s.d->size) s.expand(i);
4372 s.d->data[i] = c.unicode(); return *this; }
4376 inline QCharRef &operator=(char c)
4377 { return operator=(QChar::fromAscii(c)); }
4378 inline QCharRef &operator=(uchar c)
4379 { return operator=(QChar::fromAscii(c)); }
4381 inline QCharRef &operator=(const QCharRef &c) { return operator=(QChar(c)); }
4382 inline QCharRef &operator=(ushort rc) { return operator=(QChar(rc)); }
4383 inline QCharRef &operator=(short rc) { return operator=(QChar(rc)); }
4384 inline QCharRef &operator=(uint rc) { return operator=(QChar(rc)); }
4385 inline QCharRef &operator=(int rc) { return operator=(QChar(rc)); }
4388 inline bool isNull() const { return QChar(*this).isNull(); }
4389 inline bool isPrint() const { return QChar(*this).isPrint(); }
4390 inline bool isPunct() const { return QChar(*this).isPunct(); }
4391 inline bool isSpace() const { return QChar(*this).isSpace(); }
4392 inline bool isMark() const { return QChar(*this).isMark(); }
4393 inline bool isLetter() const { return QChar(*this).isLetter(); }
4394 inline bool isNumber() const { return QChar(*this).isNumber(); }
4395 inline bool isLetterOrNumber() { return QChar(*this).isLetterOrNumber(); }
4396 inline bool isDigit() const { return QChar(*this).isDigit(); }
4397 inline bool isLower() const { return QChar(*this).isLower(); }
4398 inline bool isUpper() const { return QChar(*this).isUpper(); }
4399 inline bool isTitleCase() const { return QChar(*this).isTitleCase(); }
4401 inline int digitValue() const { return QChar(*this).digitValue(); }
4402 QChar toLower() const { return QChar(*this).toLower(); }
4403 QChar toUpper() const { return QChar(*this).toUpper(); }
4404 QChar toTitleCase () const { return QChar(*this).toTitleCase(); }
4406 QChar::Category category() const { return QChar(*this).category(); }
4407 QChar::Direction direction() const { return QChar(*this).direction(); }
4408 QChar::Joining joining() const { return QChar(*this).joining(); }
4409 bool hasMirrored() const { return QChar(*this).hasMirrored(); }
4410 QChar mirroredChar() const { return QChar(*this).mirroredChar(); }
4411 QString decomposition() const { return QChar(*this).decomposition(); }
4412 QChar::Decomposition decompositionTag() const { return QChar(*this).decompositionTag(); }
4413 uchar combiningClass() const { return QChar(*this).combiningClass(); }
4415 QChar::UnicodeVersion unicodeVersion() const { return QChar(*this).unicodeVersion(); }
4417 inline uchar cell() const { return QChar(*this).cell(); }
4418 inline uchar row() const { return QChar(*this).row(); }
4419 inline void setCell(uchar cell);
4420 inline void setRow(uchar row);
4422 const char toAscii() const { return QChar(*this).toAscii(); }
4423 const char toLatin1() const { return QChar(*this).toLatin1(); }
4424 const ushort unicode() const { return QChar(*this).unicode(); }
4425 # 800 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h"
4428 inline void QCharRef::setRow(uchar arow) { QChar(*this).setRow(arow); }
4429 inline void QCharRef::setCell(uchar acell) { QChar(*this).setCell(acell); }
4432 inline QString::QString() : d(&shared_null) { d->ref.ref(); }
4433 inline QString::~QString() { if (!d->ref.deref()) free(d); }
4434 inline void QString::reserve(int asize) { if (d->ref != 1 || asize > d->alloc) realloc(asize); d->capacity = 1;}
4435 inline QString &QString::setUtf16(const ushort *autf16, int asize)
4436 { return setUnicode(reinterpret_cast<const QChar *>(autf16), asize); }
4437 inline QCharRef QString::operator[](int i)
4438 { do {if(!(i >= 0))qt_assert("i >= 0","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h",812);} while (0); return QCharRef(*this, i); }
4439 inline QCharRef QString::operator[](uint i)
4440 { return QCharRef(*this, i); }
4441 inline QString::iterator QString::begin()
4442 { detach(); return reinterpret_cast<QChar*>(d->data); }
4443 inline QString::const_iterator QString::begin() const
4444 { return reinterpret_cast<const QChar*>(d->data); }
4445 inline QString::const_iterator QString::constBegin() const
4446 { return reinterpret_cast<const QChar*>(d->data); }
4447 inline QString::iterator QString::end()
4448 { detach(); return reinterpret_cast<QChar*>(d->data + d->size); }
4449 inline QString::const_iterator QString::end() const
4450 { return reinterpret_cast<const QChar*>(d->data + d->size); }
4451 inline QString::const_iterator QString::constEnd() const
4452 { return reinterpret_cast<const QChar*>(d->data + d->size); }
4453 inline QBool QString::contains(const QString &s, Qt::CaseSensitivity cs) const
4454 { return QBool(indexOf(s, 0, cs) != -1); }
4455 inline QBool QString::contains(QChar c, Qt::CaseSensitivity cs) const
4456 { return QBool(indexOf(c, 0, cs) != -1); }
4459 inline bool operator==(QString::Null, QString::Null) { return true; }
4460 inline bool operator==(QString::Null, const QString &s) { return s.isNull(); }
4461 inline bool operator==(const QString &s, QString::Null) { return s.isNull(); }
4462 inline bool operator!=(QString::Null, QString::Null) { return false; }
4463 inline bool operator!=(QString::Null, const QString &s) { return !s.isNull(); }
4464 inline bool operator!=(const QString &s, QString::Null) { return !s.isNull(); }
4467 inline bool qStringComparisonHelper(const QString &s1, const char *s2)
4472 return (s1 == QLatin1String(s2));
4474 inline bool QString::operator==(const char *s) const
4475 { return qStringComparisonHelper(*this, s); }
4476 inline bool QString::operator!=(const char *s) const
4477 { return !qStringComparisonHelper(*this, s); }
4478 inline bool QString::operator<(const char *s) const
4479 { return *this < QString::fromAscii(s); }
4480 inline bool QString::operator>(const char *s) const
4481 { return *this > QString::fromAscii(s); }
4482 inline bool QString::operator<=(const char *s) const
4483 { return *this <= QString::fromAscii(s); }
4484 inline bool QString::operator>=(const char *s) const
4485 { return *this >= QString::fromAscii(s); }
4487 inline bool operator==(const char *s1, const QString &s2)
4488 { return qStringComparisonHelper(s2, s1); }
4489 inline bool operator!=(const char *s1, const QString &s2)
4490 { return !qStringComparisonHelper(s2, s1); }
4491 inline bool operator<(const char *s1, const QString &s2)
4492 { return (QString::fromAscii(s1) < s2); }
4493 inline bool operator>(const char *s1, const QString &s2)
4494 { return (QString::fromAscii(s1) > s2); }
4495 inline bool operator<=(const char *s1, const QString &s2)
4496 { return (QString::fromAscii(s1) <= s2); }
4497 inline bool operator>=(const char *s1, const QString &s2)
4498 { return (QString::fromAscii(s1) >= s2); }
4500 inline bool operator==(const char *s1, const QLatin1String &s2)
4501 { return QString::fromAscii(s1) == s2; }
4502 inline bool operator!=(const char *s1, const QLatin1String &s2)
4503 { return QString::fromAscii(s1) != s2; }
4504 inline bool operator<(const char *s1, const QLatin1String &s2)
4505 { return (QString::fromAscii(s1) < s2); }
4506 inline bool operator>(const char *s1, const QLatin1String &s2)
4507 { return (QString::fromAscii(s1) > s2); }
4508 inline bool operator<=(const char *s1, const QLatin1String &s2)
4509 { return (QString::fromAscii(s1) <= s2); }
4510 inline bool operator>=(const char *s1, const QLatin1String &s2)
4511 { return (QString::fromAscii(s1) >= s2); }
4513 inline bool operator==(const QLatin1String &s1, const QLatin1String &s2)
4514 { return (qstrcmp(s1.latin1(), s2.latin1()) == 0); }
4515 inline bool operator!=(const QLatin1String &s1, const QLatin1String &s2)
4516 { return (qstrcmp(s1.latin1(), s2.latin1()) != 0); }
4517 inline bool operator<(const QLatin1String &s1, const QLatin1String &s2)
4518 { return (qstrcmp(s1.latin1(), s2.latin1()) < 0); }
4519 inline bool operator<=(const QLatin1String &s1, const QLatin1String &s2)
4520 { return (qstrcmp(s1.latin1(), s2.latin1()) <= 0); }
4521 inline bool operator>(const QLatin1String &s1, const QLatin1String &s2)
4522 { return (qstrcmp(s1.latin1(), s2.latin1()) > 0); }
4523 inline bool operator>=(const QLatin1String &s1, const QLatin1String &s2)
4524 { return (qstrcmp(s1.latin1(), s2.latin1()) >= 0); }
4527 inline bool QString::operator==(const QByteArray &s) const
4528 { return qStringComparisonHelper(*this, s.constData()); }
4529 inline bool QString::operator!=(const QByteArray &s) const
4530 { return !qStringComparisonHelper(*this, s.constData()); }
4532 inline bool QByteArray::operator==(const QString &s) const
4533 { return qStringComparisonHelper(s, constData()); }
4534 inline bool QByteArray::operator!=(const QString &s) const
4535 { return !qStringComparisonHelper(s, constData()); }
4536 inline bool QByteArray::operator<(const QString &s) const
4537 { return QString::fromAscii(constData(), size()) < s; }
4538 inline bool QByteArray::operator>(const QString &s) const
4539 { return QString::fromAscii(constData(), size()) > s; }
4540 inline bool QByteArray::operator<=(const QString &s) const
4541 { return QString::fromAscii(constData(), size()) <= s; }
4542 inline bool QByteArray::operator>=(const QString &s) const
4543 { return QString::fromAscii(constData(), size()) >= s; }
4547 inline QByteArray &QByteArray::append(const QString &s)
4548 { return append(s.toAscii()); }
4549 inline QByteArray &QByteArray::insert(int i, const QString &s)
4550 { return insert(i, s.toAscii()); }
4551 inline QByteArray &QByteArray::replace(char c, const QString &after)
4552 { return replace(c, after.toAscii()); }
4553 inline QByteArray &QByteArray::replace(const QString &before, const char *after)
4554 { return replace(before.toAscii(), after); }
4555 inline QByteArray &QByteArray::replace(const QString &before, const QByteArray &after)
4556 { return replace(before.toAscii(), after); }
4557 inline QByteArray &QByteArray::operator+=(const QString &s)
4558 { return operator+=(s.toAscii()); }
4559 inline int QByteArray::indexOf(const QString &s, int from) const
4560 { return indexOf(s.toAscii(), from); }
4561 inline int QByteArray::lastIndexOf(const QString &s, int from) const
4562 { return lastIndexOf(s.toAscii(), from); }
4563 # 945 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h"
4564 inline const QString operator+(const QString &s1, const QString &s2)
4565 { QString t(s1); t += s2; return t; }
4566 inline const QString operator+(const QString &s1, QChar s2)
4567 { QString t(s1); t += s2; return t; }
4568 inline const QString operator+(QChar s1, const QString &s2)
4569 { QString t(s1); t += s2; return t; }
4571 inline const QString operator+(const QString &s1, const char *s2)
4572 { QString t(s1); t += QString::fromAscii(s2); return t; }
4573 inline const QString operator+(const char *s1, const QString &s2)
4574 { QString t = QString::fromAscii(s1); t += s2; return t; }
4575 inline const QString operator+(char c, const QString &s)
4576 { QString t = s; t.prepend(QChar::fromAscii(c)); return t; }
4577 inline const QString operator+(const QString &s, char c)
4578 { QString t = s; t += QChar::fromAscii(c); return t; }
4579 inline const QString operator+(const QByteArray &ba, const QString &s)
4580 { QString t = QString::fromAscii(ba.constData(), qstrnlen(ba.constData(), ba.size())); t += s; return t; }
4581 inline const QString operator+(const QString &s, const QByteArray &ba)
4582 { QString t(s); t += QString::fromAscii(ba.constData(), qstrnlen(ba.constData(), ba.size())); return t; }
4583 # 1003 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h"
4584 QDataStream &operator<<(QDataStream &, const QString &);
4585 QDataStream &operator>>(QDataStream &, QString &);
4586 # 1017 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h"
4587 template <> class QTypeInfo<QString> { public: enum { isComplex = (((Q_MOVABLE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(QString)>sizeof(void*)), isPointer = false, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "QString"; } };
4588 template <> inline bool qIsDetached<QString>(QString &t) { return t.isDetached(); } template <typename T> inline void qSwap(T &, T &); template <> inline void qSwap<QString>(QString &value1, QString &value2) { const QString::DataPtr t = value1.data_ptr(); value1.data_ptr() = value2.data_ptr(); value2.data_ptr() = t; }
4589 inline QFlags<QString::SectionFlags::enum_type> operator|(QString::SectionFlags::enum_type f1, QString::SectionFlags::enum_type f2) { return QFlags<QString::SectionFlags::enum_type>(f1) | f2; } inline QFlags<QString::SectionFlags::enum_type> operator|(QString::SectionFlags::enum_type f1, QFlags<QString::SectionFlags::enum_type> f2) { return f2 | f1; }
4590 # 1028 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h"
4592 const QString *m_string;
4596 inline QStringRef():m_string(0), m_position(0), m_size(0){}
4597 inline QStringRef(const QString *string, int position, int size);
4598 inline QStringRef(const QString *string);
4599 inline QStringRef(const QStringRef &other)
4600 :m_string(other.m_string), m_position(other.m_position), m_size(other.m_size)
4603 inline ~QStringRef(){}
4604 inline const QString *string() const { return m_string; }
4605 inline int position() const { return m_position; }
4606 inline int size() const { return m_size; }
4607 inline int count() const { return m_size; }
4608 inline int length() const { return m_size; }
4610 inline QStringRef &operator=(const QStringRef &other) {
4611 m_string = other.m_string; m_position = other.m_position;
4612 m_size = other.m_size; return *this;
4615 inline QStringRef &operator=(const QString *string);
4617 inline const QChar *unicode() const {
4619 return reinterpret_cast<const QChar *>(QString::shared_null.data);
4620 return m_string->unicode() + m_position;
4622 inline const QChar *data() const { return unicode(); }
4623 inline const QChar *constData() const { return unicode(); }
4625 inline void clear() { m_string = 0; m_position = m_size = 0; }
4626 QString toString() const;
4627 inline bool isEmpty() const { return m_size == 0; }
4628 inline bool isNull() const { return m_string == 0 || m_string->isNull(); }
4630 QStringRef appendTo(QString *string) const;
4632 inline const QChar at(int i) const
4633 { do {if(!(i >= 0 && i < size()))qt_assert("i >= 0 && i < size()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstring.h",1070);} while (0); return m_string->at(i + m_position); }
4637 inline QStringRef &QStringRef::operator=(const QString *aString)
4638 { m_string = aString; m_position = 0; m_size = aString?aString->size():0; return *this; }
4640 inline QStringRef::QStringRef(const QString *aString, int aPosition, int aSize)
4641 :m_string(aString), m_position(aPosition), m_size(aSize){}
4643 inline QStringRef::QStringRef(const QString *aString)
4644 :m_string(aString), m_position(0), m_size(aString?aString->size() : 0){}
4646 bool operator==(const QStringRef &s1,const QStringRef &s2);
4647 inline bool operator!=(const QStringRef &s1,const QStringRef &s2)
4648 { return !(s1 == s2); }
4649 bool operator==(const QString &s1,const QStringRef &s2);
4650 inline bool operator!=(const QString &s1,const QStringRef &s2)
4651 { return !(s1 == s2); }
4652 inline bool operator==(const QStringRef &s1,const QString &s2)
4653 { return s2 == s1; }
4654 inline bool operator!=(const QStringRef &s1,const QString &s2)
4655 { return s2 != s1; }
4656 bool operator==(const QLatin1String &s1, const QStringRef &s2);
4657 inline bool operator!=(const QLatin1String &s1,const QStringRef &s2)
4658 { return !(s1 == s2); }
4659 inline bool operator==(const QStringRef &s1,const QLatin1String &s2)
4660 { return s2 == s1; }
4661 inline bool operator!=(const QStringRef &s1,const QLatin1String &s2)
4662 { return s2 != s1; }
4664 bool operator<(const QStringRef &s1,const QStringRef &s2);
4665 inline bool operator>(const QStringRef &s1, const QStringRef &s2)
4667 inline bool operator<=(const QStringRef &s1, const QStringRef &s2)
4668 { return !(s1 > s2); }
4669 inline bool operator>=(const QStringRef &s1, const QStringRef &s2)
4670 { return !(s1 < s2); }
4672 inline bool qStringComparisonHelper(const QStringRef &s1, const char *s2)
4677 return (s1 == QLatin1String(s2));
4680 inline bool operator==(const char *s1, const QStringRef &s2)
4681 { return qStringComparisonHelper(s2, s1); }
4682 inline bool operator==(const QStringRef &s1, const char *s2)
4683 { return qStringComparisonHelper(s1, s2); }
4684 inline bool operator!=(const char *s1, const QStringRef &s2)
4685 { return !qStringComparisonHelper(s2, s1); }
4686 inline bool operator!=(const QStringRef &s1, const char *s2)
4687 { return !qStringComparisonHelper(s1, s2); }
4691 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 2
4692 # 48 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qiodevice.h" 2
4700 typedef QtValidLicenseForCoreModule QtCoreModule;
4703 class QIODevicePrivate;
4718 ReadWrite = ReadOnly | WriteOnly,
4724 typedef QFlags<OpenModeFlag> OpenMode;
4730 virtual ~QIODevice();
4732 OpenMode openMode() const;
4734 void setTextModeEnabled(bool enabled);
4735 bool isTextModeEnabled() const;
4737 bool isOpen() const;
4738 bool isReadable() const;
4739 bool isWritable() const;
4740 virtual bool isSequential() const;
4742 virtual bool open(OpenMode mode);
4743 virtual void close();
4747 virtual qint64 pos() const;
4748 virtual qint64 size() const;
4749 virtual bool seek(qint64 pos);
4750 virtual bool atEnd() const;
4751 virtual bool reset();
4753 virtual qint64 bytesAvailable() const;
4754 virtual qint64 bytesToWrite() const;
4756 qint64 read(char *data, qint64 maxlen);
4757 QByteArray read(qint64 maxlen);
4758 QByteArray readAll();
4759 qint64 readLine(char *data, qint64 maxlen);
4760 QByteArray readLine(qint64 maxlen = 0);
4761 virtual bool canReadLine() const;
4763 qint64 write(const char *data, qint64 len);
4764 inline qint64 write(const QByteArray &data)
4765 { return write(data.constData(), data.size()); }
4767 qint64 peek(char *data, qint64 maxlen);
4768 QByteArray peek(qint64 maxlen);
4770 virtual bool waitForReadyRead(int msecs);
4771 virtual bool waitForBytesWritten(int msecs);
4773 void ungetChar(char c);
4774 bool putChar(char c);
4775 bool getChar(char *c);
4777 QString errorString() const;
4778 # 141 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qiodevice.h"
4781 QIODevice(QIODevicePrivate &dd);
4785 virtual qint64 readData(char *data, qint64 maxlen) = 0;
4786 virtual qint64 readLineData(char *data, qint64 maxlen);
4787 virtual qint64 writeData(const char *data, qint64 len) = 0;
4789 void setOpenMode(OpenMode openMode);
4791 void setErrorString(const QString &errorString);
4794 QIODevicePrivate *d_ptr;
4798 inline QIODevicePrivate* d_func() { return reinterpret_cast<QIODevicePrivate *>(d_ptr); } inline const QIODevicePrivate* d_func() const { return reinterpret_cast<const QIODevicePrivate *>(d_ptr); } friend class QIODevicePrivate;
4799 QIODevice(const QIODevice &); QIODevice &operator=(const QIODevice &);
4800 # 196 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qiodevice.h"
4803 inline QFlags<QIODevice::OpenMode::enum_type> operator|(QIODevice::OpenMode::enum_type f1, QIODevice::OpenMode::enum_type f2) { return QFlags<QIODevice::OpenMode::enum_type>(f1) | f2; } inline QFlags<QIODevice::OpenMode::enum_type> operator|(QIODevice::OpenMode::enum_type f1, QFlags<QIODevice::OpenMode::enum_type> f2) { return f2 | f1; }
4804 # 238 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qiodevice.h"
4806 QDebug operator<<(QDebug debug, QIODevice::OpenMode modes);
4810 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qiodevice.h" 2
4811 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdatastream.h" 2
4812 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qglobal.h" 1
4813 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdatastream.h" 2
4821 typedef QtValidLicenseForCoreModule QtCoreModule;
4826 template <typename T> class QList;
4827 template <typename T> class QLinkedList;
4828 template <typename T> class QVector;
4829 template <typename T> class QSet;
4830 template <class Key, class T> class QHash;
4831 template <class Key, class T> class QMap;
4833 class QDataStreamPrivate;
4856 BigEndian = QSysInfo::BigEndian,
4857 LittleEndian = QSysInfo::LittleEndian
4867 explicit QDataStream(QIODevice *);
4871 QDataStream(QByteArray *, QIODevice::OpenMode flags);
4872 QDataStream(const QByteArray &);
4873 virtual ~QDataStream();
4875 QIODevice *device() const;
4876 void setDevice(QIODevice *);
4884 Status status() const;
4885 void setStatus(Status status);
4888 ByteOrder byteOrder() const;
4889 void setByteOrder(ByteOrder);
4891 int version() const;
4892 void setVersion(int);
4894 QDataStream &operator>>(qint8 &i);
4895 QDataStream &operator>>(quint8 &i);
4896 QDataStream &operator>>(qint16 &i);
4897 QDataStream &operator>>(quint16 &i);
4898 QDataStream &operator>>(qint32 &i);
4899 QDataStream &operator>>(quint32 &i);
4900 QDataStream &operator>>(qint64 &i);
4901 QDataStream &operator>>(quint64 &i);
4903 QDataStream &operator>>(bool &i);
4904 QDataStream &operator>>(float &f);
4905 QDataStream &operator>>(double &f);
4906 QDataStream &operator>>(char *&str);
4908 QDataStream &operator<<(qint8 i);
4909 QDataStream &operator<<(quint8 i);
4910 QDataStream &operator<<(qint16 i);
4911 QDataStream &operator<<(quint16 i);
4912 QDataStream &operator<<(qint32 i);
4913 QDataStream &operator<<(quint32 i);
4914 QDataStream &operator<<(qint64 i);
4915 QDataStream &operator<<(quint64 i);
4916 QDataStream &operator<<(bool i);
4917 QDataStream &operator<<(float f);
4918 QDataStream &operator<<(double f);
4919 QDataStream &operator<<(const char *str);
4921 QDataStream &readBytes(char *&, uint &len);
4922 int readRawData(char *, int len);
4924 QDataStream &writeBytes(const char *, uint len);
4925 int writeRawData(const char *, int len);
4927 int skipRawData(int len);
4928 # 168 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdatastream.h"
4930 QDataStream(const QDataStream &); QDataStream &operator=(const QDataStream &);
4932 QDataStreamPrivate *d;
4937 ByteOrder byteorder;
4947 inline QIODevice *QDataStream::device() const
4950 inline QDataStream::ByteOrder QDataStream::byteOrder() const
4951 { return byteorder; }
4953 inline int QDataStream::version() const
4956 inline void QDataStream::setVersion(int v)
4959 inline QDataStream &QDataStream::operator>>(quint8 &i)
4960 { return *this >> reinterpret_cast<qint8&>(i); }
4962 inline QDataStream &QDataStream::operator>>(quint16 &i)
4963 { return *this >> reinterpret_cast<qint16&>(i); }
4965 inline QDataStream &QDataStream::operator>>(quint32 &i)
4966 { return *this >> reinterpret_cast<qint32&>(i); }
4968 inline QDataStream &QDataStream::operator>>(quint64 &i)
4969 { return *this >> reinterpret_cast<qint64&>(i); }
4971 inline QDataStream &QDataStream::operator<<(quint8 i)
4972 { return *this << qint8(i); }
4974 inline QDataStream &QDataStream::operator<<(quint16 i)
4975 { return *this << qint16(i); }
4977 inline QDataStream &QDataStream::operator<<(quint32 i)
4978 { return *this << qint32(i); }
4980 inline QDataStream &QDataStream::operator<<(quint64 i)
4981 { return *this << qint64(i); }
4983 template <typename T>
4984 QDataStream& operator>>(QDataStream& s, QList<T>& l)
4989 for(quint32 i = 0; i < c; ++i)
5000 template <typename T>
5001 QDataStream& operator<<(QDataStream& s, const QList<T>& l)
5003 s << quint32(l.size());
5004 for (int i = 0; i < l.size(); ++i)
5009 template <typename T>
5010 QDataStream& operator>>(QDataStream& s, QLinkedList<T>& l)
5015 for(quint32 i = 0; i < c; ++i)
5026 template <typename T>
5027 QDataStream& operator<<(QDataStream& s, const QLinkedList<T>& l)
5029 s << quint32(l.size());
5030 typename QLinkedList<T>::ConstIterator it = l.constBegin();
5031 for(; it != l.constEnd(); ++it)
5036 template<typename T>
5037 QDataStream& operator>>(QDataStream& s, QVector<T>& v)
5043 for(quint32 i = 0; i < c; ++i) {
5051 template<typename T>
5052 QDataStream& operator<<(QDataStream& s, const QVector<T>& v)
5054 s << quint32(v.size());
5055 for (typename QVector<T>::const_iterator it = v.begin(); it != v.end(); ++it)
5060 template <typename T>
5061 QDataStream &operator>>(QDataStream &in, QSet<T> &set)
5066 for (quint32 i = 0; i < c; ++i) {
5076 template <typename T>
5077 QDataStream& operator<<(QDataStream &out, const QSet<T> &set)
5079 out << quint32(set.size());
5080 typename QSet<T>::const_iterator i = set.constBegin();
5081 while (i != set.constEnd()) {
5088 template <class Key, class T>
5089 QDataStream &operator>>(QDataStream &in, QHash<Key, T> &hash)
5091 QDataStream::Status oldStatus = in.status();
5098 for (quint32 i = 0; i < n; ++i) {
5099 if (in.status() != QDataStream::Ok)
5105 hash.insertMulti(k, t);
5108 if (in.status() != QDataStream::Ok)
5110 if (oldStatus != QDataStream::Ok)
5111 in.setStatus(oldStatus);
5115 template <class Key, class T>
5116 QDataStream &operator<<(QDataStream &out, const QHash<Key, T>& hash)
5118 out << quint32(hash.size());
5119 typename QHash<Key, T>::ConstIterator it = hash.end();
5120 typename QHash<Key, T>::ConstIterator begin = hash.begin();
5121 while (it != begin) {
5123 out << it.key() << it.value();
5131 template <class aKey, class aT>
5132 QDataStream &operator>>(QDataStream &in, QMap<aKey, aT> &map)
5135 QDataStream::Status oldStatus = in.status();
5143 map.setInsertInOrder(true);
5144 for (quint32 i = 0; i < n; ++i) {
5145 if (in.status() != QDataStream::Ok)
5151 map.insertMulti(key, value);
5153 map.setInsertInOrder(false);
5154 if (in.status() != QDataStream::Ok)
5156 if (oldStatus != QDataStream::Ok)
5157 in.setStatus(oldStatus);
5161 template <class Key, class T>
5162 QDataStream &operator<<(QDataStream &out, const QMap<Key, T> &map)
5164 out << quint32(map.size());
5165 typename QMap<Key, T>::ConstIterator it = map.end();
5166 typename QMap<Key, T>::ConstIterator begin = map.begin();
5167 while (it != begin) {
5169 out << it.key() << it.value();
5177 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qdatastream.h" 2
5178 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringlist.h" 2
5179 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qlist.h" 1
5180 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h" 1
5181 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h"
5182 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qiterator.h" 1
5183 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qiterator.h" 1
5184 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qiterator.h"
5185 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qglobal.h" 1
5186 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qiterator.h" 2
5190 typedef QtValidLicenseForCoreModule QtCoreModule;
5192 namespace std { struct bidirectional_iterator_tag; struct random_access_iterator_tag; }
5193 # 190 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qiterator.h"
5195 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qiterator.h" 2
5196 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h" 2
5197 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic.h" 1
5198 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h" 2
5199 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qalgorithms.h" 1
5200 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h" 2
5207 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/new" 1 3
5208 # 41 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/new" 3
5209 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/cstddef" 1 3
5210 # 48 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/cstddef" 3
5212 # 49 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/cstddef" 3
5213 #pragma GCC visibility push(default)
5215 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
5216 # 52 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/cstddef" 2 3
5224 #pragma GCC visibility pop
5225 # 42 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/new" 2 3
5226 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/exception" 1 3
5227 # 40 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/exception" 3
5228 #pragma GCC visibility push(default)
5234 # 54 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/exception" 3
5238 exception() throw() { }
5239 virtual ~exception() throw();
5242 virtual const char* what() const throw();
5247 class bad_exception : public exception
5250 bad_exception() throw() { }
5253 virtual ~bad_exception() throw();
5257 typedef void (*terminate_handler) ();
5259 typedef void (*unexpected_handler) ();
5262 terminate_handler set_terminate(terminate_handler) throw();
5265 void terminate() __attribute__ ((__noreturn__));
5268 unexpected_handler set_unexpected(unexpected_handler) throw();
5271 void unexpected() __attribute__ ((__noreturn__));
5272 # 102 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/exception" 3
5273 bool uncaught_exception() throw();
5278 # 117 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/exception" 3
5279 void __verbose_terminate_handler ();
5284 #pragma GCC visibility pop
5285 # 43 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/new" 2 3
5287 #pragma GCC visibility push(default)
5298 class bad_alloc : public exception
5301 bad_alloc() throw() { }
5304 virtual ~bad_alloc() throw();
5307 struct nothrow_t { };
5308 extern const nothrow_t nothrow;
5311 typedef void (*new_handler)();
5313 new_handler set_new_handler(new_handler) throw();
5315 # 84 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/new" 3
5316 void* operator new(std::size_t) throw (std::bad_alloc);
5317 void* operator new[](std::size_t) throw (std::bad_alloc);
5318 void operator delete(void*) throw();
5319 void operator delete[](void*) throw();
5320 void* operator new(std::size_t, const std::nothrow_t&) throw();
5321 void* operator new[](std::size_t, const std::nothrow_t&) throw();
5322 void operator delete(void*, const std::nothrow_t&) throw();
5323 void operator delete[](void*, const std::nothrow_t&) throw();
5326 inline void* operator new(std::size_t, void* __p) throw() { return __p; }
5327 inline void* operator new[](std::size_t, void* __p) throw() { return __p; }
5330 inline void operator delete (void*, void*) throw() { }
5331 inline void operator delete[](void*, void*) throw() { }
5335 #pragma GCC visibility pop
5336 # 52 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h" 2
5340 typedef QtValidLicenseForCoreModule QtCoreModule;
5342 template <typename T> class QVector;
5343 template <typename T> class QSet;
5348 int alloc, begin, end;
5352 enum { DataHeaderSize = sizeof(Data) - sizeof(void *) };
5356 void realloc(int alloc);
5357 static Data shared_null;
5359 void **erase(void **xi);
5361 void **append(const QListData &l);
5363 void **insert(int i);
5365 void remove(int i, int n);
5366 void move(int from, int to);
5367 inline int size() const { return d->end - d->begin; }
5368 inline bool isEmpty() const { return d->end == d->begin; }
5369 inline void **at(int i) const { return d->array + d->begin + i; }
5370 inline void **begin() const { return d->array + d->begin; }
5371 inline void **end() const { return d->array + d->end; }
5374 template <typename T>
5377 struct Node { void *v;
5382 { return *reinterpret_cast<T*>(QTypeInfo<T>::isLarge || QTypeInfo<T>::isStatic
5387 union { QListData p; QListData::Data *d; };
5390 inline QList() : d(&QListData::shared_null) { d->ref.ref(); }
5391 inline QList(const QList<T> &l) : d(l.d) { d->ref.ref(); if (!d->sharable) detach_helper(); }
5393 QList<T> &operator=(const QList<T> &l);
5394 bool operator==(const QList<T> &l) const;
5395 inline bool operator!=(const QList<T> &l) const { return !(*this == l); }
5397 inline int size() const { return p.size(); }
5399 inline void detach() { if (d->ref != 1) detach_helper(); }
5400 inline bool isDetached() const { return d->ref == 1; }
5401 inline void setSharable(bool sharable) { if (!sharable) detach(); d->sharable = sharable; }
5403 inline bool isEmpty() const { return p.isEmpty(); }
5407 const T &at(int i) const;
5408 const T &operator[](int i) const;
5409 T &operator[](int i);
5411 void append(const T &t);
5412 void prepend(const T &t);
5413 void insert(int i, const T &t);
5414 void replace(int i, const T &t);
5415 void removeAt(int i);
5416 int removeAll(const T &t);
5420 void move(int from, int to);
5421 void swap(int i, int j);
5422 int indexOf(const T &t, int from = 0) const;
5423 int lastIndexOf(const T &t, int from = -1) const;
5424 QBool contains(const T &t) const;
5425 int count(const T &t) const;
5427 class const_iterator;
5432 typedef std::random_access_iterator_tag iterator_category;
5433 typedef ptrdiff_t difference_type;
5434 typedef T value_type;
5436 typedef T &reference;
5438 inline iterator() : i(0) {}
5439 inline iterator(Node *n) : i(n) {}
5440 inline iterator(const iterator &o): i(o.i){}
5441 inline T &operator*() const { return i->t(); }
5442 inline T *operator->() const { return &i->t(); }
5443 inline T &operator[](int j) const { return i[j].t(); }
5444 inline bool operator==(const iterator &o) const { return i == o.i; }
5445 inline bool operator!=(const iterator &o) const { return i != o.i; }
5446 inline bool operator<(const iterator& other) const { return i < other.i; }
5447 inline bool operator<=(const iterator& other) const { return i <= other.i; }
5448 inline bool operator>(const iterator& other) const { return i > other.i; }
5449 inline bool operator>=(const iterator& other) const { return i >= other.i; }
5451 inline bool operator==(const const_iterator &o) const
5452 { return i == reinterpret_cast<const iterator &>(o).i; }
5453 inline bool operator!=(const const_iterator &o) const
5454 { return i != reinterpret_cast<const iterator &>(o).i; }
5455 inline bool operator<(const const_iterator& other) const
5456 { return i < reinterpret_cast<const iterator &>(other).i; }
5457 inline bool operator<=(const const_iterator& other) const
5458 { return i <= reinterpret_cast<const iterator &>(other).i; }
5459 inline bool operator>(const const_iterator& other) const
5460 { return i > reinterpret_cast<const iterator &>(other).i; }
5461 inline bool operator>=(const const_iterator& other) const
5462 { return i >= reinterpret_cast<const iterator &>(other).i; }
5464 inline iterator &operator++() { ++i; return *this; }
5465 inline iterator operator++(int) { Node *n = i; ++i; return n; }
5466 inline iterator &operator--() { i--; return *this; }
5467 inline iterator operator--(int) { Node *n = i; i--; return n; }
5468 inline iterator &operator+=(int j) { i+=j; return *this; }
5469 inline iterator &operator-=(int j) { i-=j; return *this; }
5470 inline iterator operator+(int j) const { return iterator(i+j); }
5471 inline iterator operator-(int j) const { return iterator(i-j); }
5472 inline int operator-(iterator j) const { return i - j.i; }
5474 friend class iterator;
5476 class const_iterator {
5479 typedef std::random_access_iterator_tag iterator_category;
5480 typedef ptrdiff_t difference_type;
5481 typedef T value_type;
5482 typedef const T *pointer;
5483 typedef const T &reference;
5485 inline const_iterator() : i(0) {}
5486 inline const_iterator(Node *n) : i(n) {}
5487 inline const_iterator(const const_iterator &o): i(o.i) {}
5491 inline const_iterator(const iterator &o): i(o.i) {}
5493 inline const T &operator*() const { return i->t(); }
5494 inline const T *operator->() const { return &i->t(); }
5495 inline const T &operator[](int j) const { return i[j].t(); }
5496 inline bool operator==(const const_iterator &o) const { return i == o.i; }
5497 inline bool operator!=(const const_iterator &o) const { return i != o.i; }
5498 inline bool operator<(const const_iterator& other) const { return i < other.i; }
5499 inline bool operator<=(const const_iterator& other) const { return i <= other.i; }
5500 inline bool operator>(const const_iterator& other) const { return i > other.i; }
5501 inline bool operator>=(const const_iterator& other) const { return i >= other.i; }
5502 inline const_iterator &operator++() { ++i; return *this; }
5503 inline const_iterator operator++(int) { Node *n = i; ++i; return n; }
5504 inline const_iterator &operator--() { i--; return *this; }
5505 inline const_iterator operator--(int) { Node *n = i; i--; return n; }
5506 inline const_iterator &operator+=(int j) { i+=j; return *this; }
5507 inline const_iterator &operator-=(int j) { i-=j; return *this; }
5508 inline const_iterator operator+(int j) const { return const_iterator(i+j); }
5509 inline const_iterator operator-(int j) const { return const_iterator(i-j); }
5510 inline int operator-(const_iterator j) const { return i - j.i; }
5512 friend class const_iterator;
5515 inline iterator begin() { detach(); return reinterpret_cast<Node *>(p.begin()); }
5516 inline const_iterator begin() const { return reinterpret_cast<Node *>(p.begin()); }
5517 inline const_iterator constBegin() const { return reinterpret_cast<Node *>(p.begin()); }
5518 inline iterator end() { detach(); return reinterpret_cast<Node *>(p.end()); }
5519 inline const_iterator end() const { return reinterpret_cast<Node *>(p.end()); }
5520 inline const_iterator constEnd() const { return reinterpret_cast<Node *>(p.end()); }
5521 iterator insert(iterator before, const T &t);
5522 iterator erase(iterator pos);
5523 iterator erase(iterator first, iterator last);
5526 typedef iterator Iterator;
5527 typedef const_iterator ConstIterator;
5528 inline int count() const { return p.size(); }
5529 inline T& first() { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",244);} while (0); return *begin(); }
5530 inline const T& first() const { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",245);} while (0); return *begin(); }
5531 T& last() { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",246);} while (0); return *(--end()); }
5532 const T& last() const { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",247);} while (0); return *(--end()); }
5533 inline void removeFirst() { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",248);} while (0); erase(begin()); }
5534 inline void removeLast() { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",249);} while (0); erase(--end()); }
5535 QList<T> mid(int pos, int length = -1) const;
5537 T value(int i) const;
5538 T value(int i, const T &defaultValue) const;
5541 inline void push_back(const T &t) { append(t); }
5542 inline void push_front(const T &t) { prepend(t); }
5543 inline T& front() { return first(); }
5544 inline const T& front() const { return first(); }
5545 inline T& back() { return last(); }
5546 inline const T& back() const { return last(); }
5547 inline void pop_front() { removeFirst(); }
5548 inline void pop_back() { removeLast(); }
5549 inline bool empty() const { return isEmpty(); }
5550 typedef int size_type;
5551 typedef T value_type;
5552 typedef value_type *pointer;
5553 typedef const value_type *const_pointer;
5554 typedef value_type &reference;
5555 typedef const value_type &const_reference;
5556 typedef ptrdiff_t difference_type;
5557 # 288 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h"
5558 QList<T> &operator+=(const QList<T> &l);
5559 inline QList<T> operator+(const QList<T> &l) const
5560 { QList n = *this; n += l; return n; }
5561 inline QList<T> &operator+=(const T &t)
5562 { append(t); return *this; }
5563 inline QList<T> &operator<< (const T &t)
5564 { append(t); return *this; }
5565 inline QList<T> &operator<<(const QList<T> &l)
5566 { *this += l; return *this; }
5568 QVector<T> toVector() const;
5569 QSet<T> toSet() const;
5571 static QList<T> fromVector(const QVector<T> &vector);
5572 static QList<T> fromSet(const QSet<T> &set);
5573 # 311 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h"
5575 void detach_helper();
5576 void free(QListData::Data *d);
5578 void node_construct(Node *n, const T &t);
5579 void node_destruct(Node *n);
5580 void node_copy(Node *from, Node *to, Node *src);
5581 void node_destruct(Node *from, Node *to);
5590 template <typename T>
5591 inline void QList<T>::node_construct(Node *n, const T &t)
5593 if (QTypeInfo<T>::isLarge || QTypeInfo<T>::isStatic) n->v = new T(t);
5594 else if (QTypeInfo<T>::isComplex) new (n) T(t);
5595 else *reinterpret_cast<T*>(n) = t;
5598 template <typename T>
5599 inline void QList<T>::node_destruct(Node *n)
5601 if (QTypeInfo<T>::isLarge || QTypeInfo<T>::isStatic) delete reinterpret_cast<T*>(n->v);
5602 else if (QTypeInfo<T>::isComplex) reinterpret_cast<T*>(n)->~T();
5605 template <typename T>
5606 inline void QList<T>::node_copy(Node *from, Node *to, Node *src)
5608 if (QTypeInfo<T>::isLarge || QTypeInfo<T>::isStatic)
5610 (from++)->v = new T(*reinterpret_cast<T*>((src++)->v));
5611 else if (QTypeInfo<T>::isComplex)
5613 new (from++) T(*reinterpret_cast<T*>(src++));
5616 template <typename T>
5617 inline void QList<T>::node_destruct(Node *from, Node *to)
5619 if (QTypeInfo<T>::isLarge || QTypeInfo<T>::isStatic)
5620 while(from != to) --to, delete reinterpret_cast<T*>(to->v);
5621 else if (QTypeInfo<T>::isComplex)
5622 while (from != to) --to, reinterpret_cast<T*>(to)->~T();
5625 template <typename T>
5626 inline QList<T> &QList<T>::operator=(const QList<T> &l)
5629 QListData::Data *x = l.d;
5631 x = qAtomicSetPtr(&d, x);
5632 if (!x->ref.deref())
5639 template <typename T>
5640 inline typename QList<T>::iterator QList<T>::insert(iterator before, const T &t)
5641 { Node *n = reinterpret_cast<Node *>(p.insert(before.i-reinterpret_cast<Node *>(p.begin())));
5642 node_construct(n,t); return n; }
5643 template <typename T>
5644 inline typename QList<T>::iterator QList<T>::erase(iterator it)
5645 { node_destruct(it.i);
5646 return reinterpret_cast<Node *>(p.erase(reinterpret_cast<void**>(it.i))); }
5647 template <typename T>
5648 inline const T &QList<T>::at(int i) const
5649 { do {if(!(i >= 0 && i < p.size()))qt_assert_x("QList<T>::at", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",386);} while (0);
5650 return reinterpret_cast<Node *>(p.at(i))->t(); }
5651 template <typename T>
5652 inline const T &QList<T>::operator[](int i) const
5653 { do {if(!(i >= 0 && i < p.size()))qt_assert_x("QList<T>::operator[]", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",390);} while (0);
5654 return reinterpret_cast<Node *>(p.at(i))->t(); }
5655 template <typename T>
5656 inline T &QList<T>::operator[](int i)
5657 { do {if(!(i >= 0 && i < p.size()))qt_assert_x("QList<T>::operator[]", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",394);} while (0);
5658 detach(); return reinterpret_cast<Node *>(p.at(i))->t(); }
5659 template <typename T>
5660 inline void QList<T>::removeAt(int i)
5661 { if(i >= 0 && i < p.size()) { detach();
5662 node_destruct(reinterpret_cast<Node *>(p.at(i))); p.remove(i); } }
5663 template <typename T>
5664 inline T QList<T>::takeAt(int i)
5665 { do {if(!(i >= 0 && i < p.size()))qt_assert_x("QList<T>::take", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",402);} while (0);
5666 detach(); Node *n = reinterpret_cast<Node *>(p.at(i)); T t = n->t(); node_destruct(n);
5667 p.remove(i); return t; }
5668 template <typename T>
5669 inline T QList<T>::takeFirst()
5670 { T t = first(); removeFirst(); return t; }
5671 template <typename T>
5672 inline T QList<T>::takeLast()
5673 { T t = last(); removeLast(); return t; }
5675 template <typename T>
5676 void QList<T>::append(const T &t)
5679 if (QTypeInfo<T>::isLarge || QTypeInfo<T>::isStatic) {
5680 node_construct(reinterpret_cast<Node *>(p.append()), t);
5683 node_construct(reinterpret_cast<Node *>(p.append()), cpy);
5687 template <typename T>
5688 inline void QList<T>::prepend(const T &t)
5691 if (QTypeInfo<T>::isLarge || QTypeInfo<T>::isStatic) {
5692 node_construct(reinterpret_cast<Node *>(p.prepend()), t);
5695 node_construct(reinterpret_cast<Node *>(p.prepend()), cpy);
5699 template <typename T>
5700 inline void QList<T>::insert(int i, const T &t)
5703 if (QTypeInfo<T>::isLarge || QTypeInfo<T>::isStatic) {
5704 node_construct(reinterpret_cast<Node *>(p.insert(i)), t);
5707 node_construct(reinterpret_cast<Node *>(p.insert(i)), cpy);
5711 template <typename T>
5712 inline void QList<T>::replace(int i, const T &t)
5714 do {if(!(i >= 0 && i < p.size()))qt_assert_x("QList<T>::replace", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",451);} while (0);
5716 if (QTypeInfo<T>::isLarge || QTypeInfo<T>::isStatic) {
5717 reinterpret_cast<Node *>(p.at(i))->t() = t;
5720 reinterpret_cast<Node *>(p.at(i))->t() = cpy;
5724 template <typename T>
5725 inline void QList<T>::swap(int i, int j)
5727 do {if(!(i >= 0 && i < p.size() && j >= 0 && j < p.size()))qt_assert_x("QList<T>::swap", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",465);} while (0);
5730 void *t = d->array[d->begin + i];
5731 d->array[d->begin + i] = d->array[d->begin + j];
5732 d->array[d->begin + j] = t;
5735 template <typename T>
5736 inline void QList<T>::move(int from, int to)
5738 do {if(!(from >= 0 && from < p.size() && to >= 0 && to < p.size()))qt_assert_x("QList<T>::move", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",476);} while (0);
5744 template<typename T>
5745 QList<T> QList<T>::mid(int pos, int length) const
5748 length = size() - pos;
5749 if (pos == 0 && length == size())
5752 if (pos + length > size())
5753 length = size() - pos;
5754 for (int i = pos; i < pos + length; ++i)
5759 template<typename T>
5760 T QList<T>::value(int i) const
5762 if (i < 0 || i >= p.size()) {
5765 return reinterpret_cast<Node *>(p.at(i))->t();
5768 template<typename T>
5769 T QList<T>::value(int i, const T& defaultValue) const
5771 return ((i < 0 || i >= p.size()) ? defaultValue : reinterpret_cast<Node *>(p.at(i))->t());
5774 template <typename T>
5775 void QList<T>::detach_helper()
5777 Node *n = reinterpret_cast<Node *>(p.begin());
5778 QListData::Data *x = p.detach2();
5779 node_copy(reinterpret_cast<Node *>(p.begin()), reinterpret_cast<Node *>(p.end()), n);
5780 if (!x->ref.deref())
5784 template <typename T>
5789 QListData::Data *x = &QListData::shared_null;
5790 x = qAtomicSetPtr(&d, x);
5791 if (!x->ref.deref())
5795 template <typename T>
5796 bool QList<T>::operator==(const QList<T> &l) const
5798 if (p.size() != l.p.size())
5802 Node *i = reinterpret_cast<Node *>(p.end());
5803 Node *b = reinterpret_cast<Node *>(p.begin());
5804 Node *li = reinterpret_cast<Node *>(l.p.end());
5807 if (!(i->t() == li->t()))
5814 template <typename T>
5815 void QList<T>::free(QListData::Data *data)
5817 node_destruct(reinterpret_cast<Node *>(data->array + data->begin),
5818 reinterpret_cast<Node *>(data->array + data->end));
5824 template <typename T>
5825 void QList<T>::clear()
5830 template <typename T>
5831 int QList<T>::removeAll(const T &_t)
5835 int removedCount=0, i=0;
5837 while (i < p.size())
5838 if ((n = reinterpret_cast<Node *>(p.at(i)))->t() == t) {
5845 return removedCount;
5848 template <typename T>
5849 typename QList<T>::iterator QList<T>::erase(typename QList<T>::iterator afirst,
5850 typename QList<T>::iterator alast)
5852 for (Node *n = afirst.i; n < alast.i; ++n)
5854 int idx = afirst - begin();
5855 p.remove(idx, alast - afirst);
5856 return begin() + idx;
5859 template <typename T>
5860 QList<T> &QList<T>::operator+=(const QList<T> &l)
5863 Node *n = reinterpret_cast<Node *>(p.append(l.p));
5864 node_copy(n, reinterpret_cast<Node *>(p.end()), reinterpret_cast<Node *>(l.p.begin()));
5868 template <typename T>
5869 int QList<T>::indexOf(const T &t, int from) const
5872 from = qMax(from + p.size(), 0);
5873 if (from < p.size()) {
5874 Node *n = reinterpret_cast<Node *>(p.at(from -1));
5875 Node *e = reinterpret_cast<Node *>(p.end());
5878 return n - reinterpret_cast<Node *>(p.begin());
5883 template <typename T>
5884 int QList<T>::lastIndexOf(const T &t, int from) const
5888 else if (from >= p.size())
5891 Node *b = reinterpret_cast<Node *>(p.begin());
5892 Node *n = reinterpret_cast<Node *>(p.at(from + 1));
5901 template <typename T>
5902 QBool QList<T>::contains(const T &t) const
5904 Node *b = reinterpret_cast<Node *>(p.begin());
5905 Node *i = reinterpret_cast<Node *>(p.end());
5909 return QBool(false);
5912 template <typename T>
5913 int QList<T>::count(const T &t) const
5916 Node *b = reinterpret_cast<Node *>(p.begin());
5917 Node *i = reinterpret_cast<Node *>(p.end());
5924 template <class T> class QListIterator { typedef typename QList<T>::const_iterator const_iterator; QList<T> c; const_iterator i; public: inline QListIterator(const QList<T> &container) : c(container), i(c.constBegin()) {} inline QListIterator &operator=(const QList<T> &container) { c = container; i = c.constBegin(); return *this; } inline void toFront() { i = c.constBegin(); } inline void toBack() { i = c.constEnd(); } inline bool hasNext() const { return i != c.constEnd(); } inline const T &next() { return *i++; } inline const T &peekNext() const { return *i; } inline bool hasPrevious() const { return i != c.constBegin(); } inline const T &previous() { return *--i; } inline const T &peekPrevious() const { const_iterator p = i; return *--p; } inline bool findNext(const T &t) { while (i != c.constEnd()) if (*i++ == t) return true; return false; } inline bool findPrevious(const T &t) { while (i != c.constBegin()) if (*(--i) == t) return true; return false; } };
5925 template <class T> class QMutableListIterator { typedef typename QList<T>::iterator iterator; typedef typename QList<T>::const_iterator const_iterator; QList<T> *c; iterator i, n; inline bool item_exists() const { return const_iterator(n) != c->constEnd(); } public: inline QMutableListIterator(QList<T> &container) : c(&container) { c->setSharable(false); i = c->begin(); n = c->end(); } inline ~QMutableListIterator() { c->setSharable(true); } inline QMutableListIterator &operator=(QList<T> &container) { c->setSharable(true); c = &container; c->setSharable(false); i = c->begin(); n = c->end(); return *this; } inline void toFront() { i = c->begin(); n = c->end(); } inline void toBack() { i = c->end(); n = i; } inline bool hasNext() const { return c->constEnd() != const_iterator(i); } inline T &next() { n = i++; return *n; } inline T &peekNext() const { return *i; } inline bool hasPrevious() const { return c->constBegin() != const_iterator(i); } inline T &previous() { n = --i; return *n; } inline T &peekPrevious() const { iterator p = i; return *--p; } inline void remove() { if (c->constEnd() != const_iterator(n)) { i = c->erase(n); n = c->end(); } } inline void setValue(const T &t) const { if (c->constEnd() != const_iterator(n)) *n = t; } inline T &value() { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",662);} while (0); return *n; } inline const T &value() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qlist.h",662);} while (0); return *n; } inline void insert(const T &t) { n = i = c->insert(i, t); ++i; } inline bool findNext(const T &t) { while (c->constEnd() != const_iterator(n = i)) if (*i++ == t) return true; return false; } inline bool findPrevious(const T &t) { while (c->constBegin() != const_iterator(i)) if (*(n = --i) == t) return true; n = c->end(); return false; } };
5928 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qlist.h" 2
5929 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringlist.h" 2
5930 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qregexp.h" 1
5931 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qregexp.h" 1
5932 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qregexp.h"
5933 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
5934 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qregexp.h" 2
5941 typedef QtValidLicenseForCoreModule QtCoreModule;
5943 struct QRegExpPrivate;
5949 enum PatternSyntax { RegExp, Wildcard, FixedString, RegExp2 };
5950 enum CaretMode { CaretAtZero, CaretAtOffset, CaretWontMatch };
5953 explicit QRegExp(const QString &pattern, Qt::CaseSensitivity cs = Qt::CaseSensitive,
5954 PatternSyntax syntax = RegExp);
5955 QRegExp(const QRegExp &rx);
5957 QRegExp &operator=(const QRegExp &rx);
5959 bool operator==(const QRegExp &rx) const;
5960 inline bool operator!=(const QRegExp &rx) const { return !operator==(rx); }
5962 bool isEmpty() const;
5963 bool isValid() const;
5964 QString pattern() const;
5965 void setPattern(const QString &pattern);
5966 Qt::CaseSensitivity caseSensitivity() const;
5967 void setCaseSensitivity(Qt::CaseSensitivity cs);
5973 PatternSyntax patternSyntax() const;
5974 void setPatternSyntax(PatternSyntax syntax);
5981 bool isMinimal() const;
5982 void setMinimal(bool minimal);
5987 bool exactMatch(const QString &str) const;
5989 int indexIn(const QString &str, int offset = 0, CaretMode caretMode = CaretAtZero) const;
5990 int lastIndexIn(const QString &str, int offset = -1, CaretMode caretMode = CaretAtZero) const;
5991 # 109 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qregexp.h"
5992 int matchedLength() const;
5994 int numCaptures() const;
5995 QStringList capturedTexts();
5996 QString cap(int nth = 0);
5997 int pos(int nth = 0);
5998 QString errorString();
6001 static QString escape(const QString &str);
6002 # 129 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qregexp.h"
6004 QRegExpPrivate *priv;
6007 template <> class QTypeInfo<QRegExp> { public: enum { isComplex = (((Q_MOVABLE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(QRegExp)>sizeof(void*)), isPointer = false, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "QRegExp"; } };
6010 QDataStream &operator<<(QDataStream &out, const QRegExp ®Exp);
6011 QDataStream &operator>>(QDataStream &in, QRegExp ®Exp);
6015 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qregexp.h" 2
6016 # 46 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringlist.h" 2
6017 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
6018 # 47 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringlist.h" 2
6019 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstringmatcher.h" 1
6020 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringmatcher.h" 1
6021 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringmatcher.h"
6022 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
6023 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringmatcher.h" 2
6027 typedef QtValidLicenseForCoreModule QtCoreModule;
6029 class QStringMatcherPrivate;
6031 class QStringMatcher
6035 QStringMatcher(const QString &pattern,
6036 Qt::CaseSensitivity cs = Qt::CaseSensitive);
6037 QStringMatcher(const QStringMatcher &other);
6040 QStringMatcher &operator=(const QStringMatcher &other);
6042 void setPattern(const QString &pattern);
6043 void setCaseSensitivity(Qt::CaseSensitivity cs);
6045 int indexIn(const QString &str, int from = 0) const;
6046 inline QString pattern() const { return q_pattern; }
6047 inline Qt::CaseSensitivity caseSensitivity() const { return q_cs; }
6050 QStringMatcherPrivate *d_ptr;
6052 Qt::CaseSensitivity q_cs;
6053 uint q_skiptable[256];
6057 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstringmatcher.h" 2
6058 # 48 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringlist.h" 2
6065 typedef QtValidLicenseForCoreModule QtCoreModule;
6069 typedef QListIterator<QString> QStringListIterator;
6070 typedef QMutableListIterator<QString> QMutableStringListIterator;
6072 class QStringList : public QList<QString>
6075 inline QStringList() { }
6076 inline explicit QStringList(const QString &i) { append(i); }
6077 inline QStringList(const QStringList &l) : QList<QString>(l) { }
6078 inline QStringList(const QList<QString> &l) : QList<QString>(l) { }
6082 inline QString join(const QString &sep) const;
6084 inline QStringList filter(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
6085 inline QBool contains(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
6087 inline QStringList &replaceInStrings(const QString &before, const QString &after, Qt::CaseSensitivity cs = Qt::CaseSensitive);
6089 inline QStringList operator+(const QStringList &other) const
6090 { QStringList n = *this; n += other; return n; }
6091 inline QStringList &operator<<(const QString &str)
6092 { append(str); return *this; }
6093 inline QStringList &operator<<(const QStringList &l)
6094 { *this += l; return *this; }
6097 inline QStringList filter(const QRegExp &rx) const;
6098 inline QStringList &replaceInStrings(const QRegExp &rx, const QString &after);
6099 inline int indexOf(const QRegExp &rx, int from = 0) const;
6100 inline int lastIndexOf(const QRegExp &rx, int from = -1) const;
6103 using QList<QString>::indexOf;
6104 using QList<QString>::lastIndexOf;
6105 # 118 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringlist.h"
6108 namespace QtPrivate {
6109 void QStringList_sort(QStringList *that);
6110 QString QStringList_join(const QStringList *that, const QString &sep);
6111 QStringList QStringList_filter(const QStringList *that, const QString &str,
6112 Qt::CaseSensitivity cs);
6114 QBool QStringList_contains(const QStringList *that, const QString &str, Qt::CaseSensitivity cs);
6115 void QStringList_replaceInStrings(QStringList *that, const QString &before, const QString &after,
6116 Qt::CaseSensitivity cs);
6119 void QStringList_replaceInStrings(QStringList *that, const QRegExp &rx, const QString &after);
6120 QStringList QStringList_filter(const QStringList *that, const QRegExp &re);
6121 int QStringList_indexOf(const QStringList *that, const QRegExp &rx, int from);
6122 int QStringList_lastIndexOf(const QStringList *that, const QRegExp &rx, int from);
6126 inline void QStringList::sort()
6128 QtPrivate::QStringList_sort(this);
6131 inline QString QStringList::join(const QString &sep) const
6133 return QtPrivate::QStringList_join(this, sep);
6136 inline QStringList QStringList::filter(const QString &str, Qt::CaseSensitivity cs) const
6138 return QtPrivate::QStringList_filter(this, str, cs);
6141 inline QBool QStringList::contains(const QString &str, Qt::CaseSensitivity cs) const
6143 return QtPrivate::QStringList_contains(this, str, cs);
6146 inline QStringList &QStringList::replaceInStrings(const QString &before, const QString &after, Qt::CaseSensitivity cs)
6148 QtPrivate::QStringList_replaceInStrings(this, before, after, cs);
6153 inline QStringList &QStringList::replaceInStrings(const QRegExp &rx, const QString &after)
6155 QtPrivate::QStringList_replaceInStrings(this, rx, after);
6159 inline QStringList QStringList::filter(const QRegExp &rx) const
6161 return QtPrivate::QStringList_filter(this, rx);
6164 inline int QStringList::indexOf(const QRegExp &rx, int from) const
6166 return QtPrivate::QStringList_indexOf(this, rx, from);
6169 inline int QStringList::lastIndexOf(const QRegExp &rx, int from) const
6171 return QtPrivate::QStringList_lastIndexOf(this, rx, from);
6173 # 219 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstringlist.h"
6174 inline QDataStream &operator>>(QDataStream &in, QStringList &list)
6176 return operator>>(in, static_cast<QList<QString> &>(list));
6178 inline QDataStream &operator<<(QDataStream &out, const QStringList &list)
6180 return operator<<(out, static_cast<const QList<QString> &>(list));
6185 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstringlist.h" 2
6186 # 43 "./project.h" 2
6187 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qtextstream.h" 1
6188 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qtextstream.h" 1
6189 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qtextstream.h"
6190 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qiodevice.h" 1
6191 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qtextstream.h" 2
6192 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
6193 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qtextstream.h" 2
6194 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qchar.h" 1
6195 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qtextstream.h" 2
6203 # 1 "/usr/include/stdio.h" 1 3 4
6211 # 1 "/usr/include/gentoo-multilib/amd64/stdio.h" 1 3 4
6212 # 28 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6213 # 1 "/usr/include/features.h" 1 3 4
6214 # 29 "/usr/include/gentoo-multilib/amd64/stdio.h" 2 3 4
6220 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
6221 # 35 "/usr/include/gentoo-multilib/amd64/stdio.h" 2 3 4
6223 # 1 "/usr/include/bits/types.h" 1 3 4
6231 # 1 "/usr/include/gentoo-multilib/amd64/bits/types.h" 1 3 4
6232 # 27 "/usr/include/gentoo-multilib/amd64/bits/types.h" 3 4
6233 # 1 "/usr/include/features.h" 1 3 4
6234 # 28 "/usr/include/gentoo-multilib/amd64/bits/types.h" 2 3 4
6235 # 1 "/usr/include/bits/wordsize.h" 1 3 4
6243 # 1 "/usr/include/gentoo-multilib/amd64/bits/wordsize.h" 1 3 4
6244 # 9 "/usr/include/bits/wordsize.h" 2 3 4
6245 # 29 "/usr/include/gentoo-multilib/amd64/bits/types.h" 2 3 4
6248 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
6249 # 32 "/usr/include/gentoo-multilib/amd64/bits/types.h" 2 3 4
6252 typedef unsigned char __u_char;
6253 typedef unsigned short int __u_short;
6254 typedef unsigned int __u_int;
6255 typedef unsigned long int __u_long;
6258 typedef signed char __int8_t;
6259 typedef unsigned char __uint8_t;
6260 typedef signed short int __int16_t;
6261 typedef unsigned short int __uint16_t;
6262 typedef signed int __int32_t;
6263 typedef unsigned int __uint32_t;
6265 typedef signed long int __int64_t;
6266 typedef unsigned long int __uint64_t;
6274 typedef long int __quad_t;
6275 typedef unsigned long int __u_quad_t;
6276 # 134 "/usr/include/gentoo-multilib/amd64/bits/types.h" 3 4
6277 # 1 "/usr/include/bits/typesizes.h" 1 3 4
6285 # 1 "/usr/include/gentoo-multilib/amd64/bits/typesizes.h" 1 3 4
6286 # 9 "/usr/include/bits/typesizes.h" 2 3 4
6287 # 135 "/usr/include/gentoo-multilib/amd64/bits/types.h" 2 3 4
6290 typedef unsigned long int __dev_t;
6291 typedef unsigned int __uid_t;
6292 typedef unsigned int __gid_t;
6293 typedef unsigned long int __ino_t;
6294 typedef unsigned long int __ino64_t;
6295 typedef unsigned int __mode_t;
6296 typedef unsigned long int __nlink_t;
6297 typedef long int __off_t;
6298 typedef long int __off64_t;
6299 typedef int __pid_t;
6300 typedef struct { int __val[2]; } __fsid_t;
6301 typedef long int __clock_t;
6302 typedef unsigned long int __rlim_t;
6303 typedef unsigned long int __rlim64_t;
6304 typedef unsigned int __id_t;
6305 typedef long int __time_t;
6306 typedef unsigned int __useconds_t;
6307 typedef long int __suseconds_t;
6309 typedef int __daddr_t;
6310 typedef long int __swblk_t;
6311 typedef int __key_t;
6314 typedef int __clockid_t;
6317 typedef void * __timer_t;
6320 typedef long int __blksize_t;
6325 typedef long int __blkcnt_t;
6326 typedef long int __blkcnt64_t;
6329 typedef unsigned long int __fsblkcnt_t;
6330 typedef unsigned long int __fsblkcnt64_t;
6333 typedef unsigned long int __fsfilcnt_t;
6334 typedef unsigned long int __fsfilcnt64_t;
6336 typedef long int __ssize_t;
6340 typedef __off64_t __loff_t;
6341 typedef __quad_t *__qaddr_t;
6342 typedef char *__caddr_t;
6345 typedef long int __intptr_t;
6348 typedef unsigned int __socklen_t;
6349 # 9 "/usr/include/bits/types.h" 2 3 4
6350 # 37 "/usr/include/gentoo-multilib/amd64/stdio.h" 2 3 4
6351 # 45 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6356 typedef struct _IO_FILE FILE;
6362 # 65 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6363 typedef struct _IO_FILE __FILE;
6364 # 75 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6365 # 1 "/usr/include/libio.h" 1 3 4
6373 # 1 "/usr/include/gentoo-multilib/amd64/libio.h" 1 3 4
6374 # 32 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6375 # 1 "/usr/include/_G_config.h" 1 3 4
6383 # 1 "/usr/include/gentoo-multilib/amd64/_G_config.h" 1 3 4
6384 # 9 "/usr/include/gentoo-multilib/amd64/_G_config.h" 3 4
6385 # 1 "/usr/include/bits/types.h" 1 3 4
6386 # 10 "/usr/include/gentoo-multilib/amd64/_G_config.h" 2 3 4
6391 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
6392 # 355 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 3 4
6393 typedef unsigned int wint_t;
6394 # 15 "/usr/include/gentoo-multilib/amd64/_G_config.h" 2 3 4
6395 # 24 "/usr/include/gentoo-multilib/amd64/_G_config.h" 3 4
6396 # 1 "/usr/include/wchar.h" 1 3 4
6404 # 1 "/usr/include/gentoo-multilib/amd64/wchar.h" 1 3 4
6405 # 48 "/usr/include/gentoo-multilib/amd64/wchar.h" 3 4
6406 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
6407 # 49 "/usr/include/gentoo-multilib/amd64/wchar.h" 2 3 4
6409 # 1 "/usr/include/bits/wchar.h" 1 3 4
6417 # 1 "/usr/include/gentoo-multilib/amd64/bits/wchar.h" 1 3 4
6418 # 9 "/usr/include/bits/wchar.h" 2 3 4
6419 # 51 "/usr/include/gentoo-multilib/amd64/wchar.h" 2 3 4
6420 # 76 "/usr/include/gentoo-multilib/amd64/wchar.h" 3 4
6430 # 9 "/usr/include/wchar.h" 2 3 4
6431 # 25 "/usr/include/gentoo-multilib/amd64/_G_config.h" 2 3 4
6436 __mbstate_t __state;
6441 __mbstate_t __state;
6443 # 44 "/usr/include/gentoo-multilib/amd64/_G_config.h" 3 4
6444 # 1 "/usr/include/gconv.h" 1 3 4
6452 # 1 "/usr/include/gentoo-multilib/amd64/gconv.h" 1 3 4
6453 # 26 "/usr/include/gentoo-multilib/amd64/gconv.h" 3 4
6454 # 1 "/usr/include/features.h" 1 3 4
6455 # 27 "/usr/include/gentoo-multilib/amd64/gconv.h" 2 3 4
6457 # 1 "/usr/include/wchar.h" 1 3 4
6465 # 1 "/usr/include/gentoo-multilib/amd64/wchar.h" 1 3 4
6466 # 48 "/usr/include/gentoo-multilib/amd64/wchar.h" 3 4
6467 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
6468 # 49 "/usr/include/gentoo-multilib/amd64/wchar.h" 2 3 4
6470 # 1 "/usr/include/bits/wchar.h" 1 3 4
6471 # 51 "/usr/include/gentoo-multilib/amd64/wchar.h" 2 3 4
6472 # 9 "/usr/include/wchar.h" 2 3 4
6473 # 29 "/usr/include/gentoo-multilib/amd64/gconv.h" 2 3 4
6476 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
6477 # 32 "/usr/include/gentoo-multilib/amd64/gconv.h" 2 3 4
6490 __GCONV_EMPTY_INPUT,
6491 __GCONV_FULL_OUTPUT,
6492 __GCONV_ILLEGAL_INPUT,
6493 __GCONV_INCOMPLETE_INPUT,
6495 __GCONV_ILLEGAL_DESCRIPTOR,
6496 __GCONV_INTERNAL_ERROR
6503 __GCONV_IS_LAST = 0x0001,
6504 __GCONV_IGNORE_ERRORS = 0x0002
6509 struct __gconv_step;
6510 struct __gconv_step_data;
6511 struct __gconv_loaded_object;
6512 struct __gconv_trans_data;
6516 typedef int (*__gconv_fct) (struct __gconv_step *, struct __gconv_step_data *,
6517 __const unsigned char **, __const unsigned char *,
6518 unsigned char **, size_t *, int, int);
6521 typedef wint_t (*__gconv_btowc_fct) (struct __gconv_step *, unsigned char);
6524 typedef int (*__gconv_init_fct) (struct __gconv_step *);
6525 typedef void (*__gconv_end_fct) (struct __gconv_step *);
6529 typedef int (*__gconv_trans_fct) (struct __gconv_step *,
6530 struct __gconv_step_data *, void *,
6531 __const unsigned char *,
6532 __const unsigned char **,
6533 __const unsigned char *, unsigned char **,
6537 typedef int (*__gconv_trans_context_fct) (void *, __const unsigned char *,
6538 __const unsigned char *,
6539 unsigned char *, unsigned char *);
6542 typedef int (*__gconv_trans_query_fct) (__const char *, __const char ***,
6546 typedef int (*__gconv_trans_init_fct) (void **, const char *);
6547 typedef void (*__gconv_trans_end_fct) (void *);
6549 struct __gconv_trans_data
6552 __gconv_trans_fct __trans_fct;
6553 __gconv_trans_context_fct __trans_context_fct;
6554 __gconv_trans_end_fct __trans_end_fct;
6556 struct __gconv_trans_data *__next;
6563 struct __gconv_loaded_object *__shlib_handle;
6564 __const char *__modname;
6572 __gconv_btowc_fct __btowc_fct;
6573 __gconv_init_fct __init_fct;
6574 __gconv_end_fct __end_fct;
6578 int __min_needed_from;
6579 int __max_needed_from;
6580 int __min_needed_to;
6581 int __max_needed_to;
6591 struct __gconv_step_data
6593 unsigned char *__outbuf;
6594 unsigned char *__outbufend;
6602 int __invocation_counter;
6608 __mbstate_t *__statep;
6609 __mbstate_t __state;
6613 struct __gconv_trans_data *__trans;
6618 typedef struct __gconv_info
6621 struct __gconv_step *__steps;
6622 __extension__ struct __gconv_step_data __data [];
6624 # 9 "/usr/include/gconv.h" 2 3 4
6625 # 45 "/usr/include/gentoo-multilib/amd64/_G_config.h" 2 3 4
6628 struct __gconv_info __cd;
6631 struct __gconv_info __cd;
6632 struct __gconv_step_data __data;
6636 typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));
6637 typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));
6638 typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));
6639 typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
6640 # 9 "/usr/include/_G_config.h" 2 3 4
6641 # 33 "/usr/include/gentoo-multilib/amd64/libio.h" 2 3 4
6642 # 167 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6643 struct _IO_jump_t; struct _IO_FILE;
6644 # 177 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6645 typedef void _IO_lock_t;
6652 struct _IO_marker *_next;
6653 struct _IO_FILE *_sbuf;
6658 # 200 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6662 enum __codecvt_result
6669 # 268 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6678 char* _IO_read_base;
6679 char* _IO_write_base;
6680 char* _IO_write_ptr;
6681 char* _IO_write_end;
6685 char *_IO_save_base;
6686 char *_IO_backup_base;
6689 struct _IO_marker *_markers;
6691 struct _IO_FILE *_chain;
6699 __off_t _old_offset;
6703 unsigned short _cur_column;
6704 signed char _vtable_offset;
6710 # 316 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6712 # 325 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6721 char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
6729 struct _IO_FILE_plus;
6731 extern struct _IO_FILE_plus _IO_2_1_stdin_;
6732 extern struct _IO_FILE_plus _IO_2_1_stdout_;
6733 extern struct _IO_FILE_plus _IO_2_1_stderr_;
6734 # 361 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6735 typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nbytes);
6743 typedef __ssize_t __io_write_fn (void *__cookie, __const char *__buf,
6752 typedef int __io_seek_fn (void *__cookie, __off64_t *__pos, int __w);
6755 typedef int __io_close_fn (void *__cookie);
6760 typedef __io_read_fn cookie_read_function_t;
6761 typedef __io_write_fn cookie_write_function_t;
6762 typedef __io_seek_fn cookie_seek_function_t;
6763 typedef __io_close_fn cookie_close_function_t;
6769 __io_write_fn *write;
6771 __io_close_fn *close;
6772 } _IO_cookie_io_functions_t;
6773 typedef _IO_cookie_io_functions_t cookie_io_functions_t;
6775 struct _IO_cookie_file;
6778 extern void _IO_cookie_init (struct _IO_cookie_file *__cfile, int __read_write,
6779 void *__cookie, _IO_cookie_io_functions_t __fns);
6787 extern int __underflow (_IO_FILE *);
6788 extern int __uflow (_IO_FILE *);
6789 extern int __overflow (_IO_FILE *, int);
6790 extern wint_t __wunderflow (_IO_FILE *);
6791 extern wint_t __wuflow (_IO_FILE *);
6792 extern wint_t __woverflow (_IO_FILE *, wint_t);
6793 # 451 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6794 extern int _IO_getc (_IO_FILE *__fp);
6795 extern int _IO_putc (int __c, _IO_FILE *__fp);
6796 extern int _IO_feof (_IO_FILE *__fp) throw ();
6797 extern int _IO_ferror (_IO_FILE *__fp) throw ();
6799 extern int _IO_peekc_locked (_IO_FILE *__fp);
6805 extern void _IO_flockfile (_IO_FILE *) throw ();
6806 extern void _IO_funlockfile (_IO_FILE *) throw ();
6807 extern int _IO_ftrylockfile (_IO_FILE *) throw ();
6808 # 481 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6809 extern int _IO_vfscanf (_IO_FILE * __restrict, const char * __restrict,
6810 __gnuc_va_list, int *__restrict);
6811 extern int _IO_vfprintf (_IO_FILE *__restrict, const char *__restrict,
6813 extern __ssize_t _IO_padn (_IO_FILE *, int, __ssize_t);
6814 extern size_t _IO_sgetn (_IO_FILE *, void *, size_t);
6816 extern __off64_t _IO_seekoff (_IO_FILE *, __off64_t, int, int);
6817 extern __off64_t _IO_seekpos (_IO_FILE *, __off64_t, int);
6819 extern void _IO_free_backup_area (_IO_FILE *) throw ();
6820 # 543 "/usr/include/gentoo-multilib/amd64/libio.h" 3 4
6822 # 9 "/usr/include/libio.h" 2 3 4
6823 # 76 "/usr/include/gentoo-multilib/amd64/stdio.h" 2 3 4
6824 # 89 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6827 typedef _G_fpos_t fpos_t;
6833 typedef _G_fpos64_t fpos64_t;
6834 # 141 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6835 # 1 "/usr/include/bits/stdio_lim.h" 1 3 4
6843 # 1 "/usr/include/gentoo-multilib/amd64/bits/stdio_lim.h" 1 3 4
6844 # 9 "/usr/include/bits/stdio_lim.h" 2 3 4
6845 # 142 "/usr/include/gentoo-multilib/amd64/stdio.h" 2 3 4
6849 extern struct _IO_FILE *stdin;
6850 extern struct _IO_FILE *stdout;
6851 extern struct _IO_FILE *stderr;
6859 extern int remove (__const char *__filename) throw ();
6861 extern int rename (__const char *__old, __const char *__new) throw ();
6866 extern int renameat (int __oldfd, __const char *__old, int __newfd,
6867 __const char *__new) throw ();
6876 extern FILE *tmpfile (void) ;
6877 # 182 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6878 extern FILE *tmpfile64 (void) ;
6882 extern char *tmpnam (char *__s) throw () ;
6888 extern char *tmpnam_r (char *__s) throw () ;
6889 # 204 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6890 extern char *tempnam (__const char *__dir, __const char *__pfx)
6891 throw () __attribute__ ((__malloc__)) ;
6900 extern int fclose (FILE *__stream);
6905 extern int fflush (FILE *__stream);
6907 # 229 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6908 extern int fflush_unlocked (FILE *__stream);
6909 # 239 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6910 extern int fcloseall (void);
6920 extern FILE *fopen (__const char *__restrict __filename,
6921 __const char *__restrict __modes) ;
6926 extern FILE *freopen (__const char *__restrict __filename,
6927 __const char *__restrict __modes,
6928 FILE *__restrict __stream) ;
6929 # 272 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
6932 extern FILE *fopen64 (__const char *__restrict __filename,
6933 __const char *__restrict __modes) ;
6934 extern FILE *freopen64 (__const char *__restrict __filename,
6935 __const char *__restrict __modes,
6936 FILE *__restrict __stream) ;
6941 extern FILE *fdopen (int __fd, __const char *__modes) throw () ;
6947 extern FILE *fopencookie (void *__restrict __magic_cookie,
6948 __const char *__restrict __modes,
6949 _IO_cookie_io_functions_t __io_funcs) throw () ;
6952 extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes)
6958 extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) throw () ;
6965 extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) throw ();
6969 extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
6970 int __modes, size_t __n) throw ();
6976 extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
6977 size_t __size) throw ();
6980 extern void setlinebuf (FILE *__stream) throw ();
6989 extern int fprintf (FILE *__restrict __stream,
6990 __const char *__restrict __format, ...);
6995 extern int printf (__const char *__restrict __format, ...);
6997 extern int sprintf (char *__restrict __s,
6998 __const char *__restrict __format, ...) throw ();
7004 extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format,
7005 __gnuc_va_list __arg);
7010 extern int vprintf (__const char *__restrict __format, __gnuc_va_list __arg);
7012 extern int vsprintf (char *__restrict __s, __const char *__restrict __format,
7013 __gnuc_va_list __arg) throw ();
7019 extern int snprintf (char *__restrict __s, size_t __maxlen,
7020 __const char *__restrict __format, ...)
7021 throw () __attribute__ ((__format__ (__printf__, 3, 4)));
7023 extern int vsnprintf (char *__restrict __s, size_t __maxlen,
7024 __const char *__restrict __format, __gnuc_va_list __arg)
7025 throw () __attribute__ ((__format__ (__printf__, 3, 0)));
7032 extern int vasprintf (char **__restrict __ptr, __const char *__restrict __f,
7033 __gnuc_va_list __arg)
7034 throw () __attribute__ ((__format__ (__printf__, 2, 0))) ;
7035 extern int __asprintf (char **__restrict __ptr,
7036 __const char *__restrict __fmt, ...)
7037 throw () __attribute__ ((__format__ (__printf__, 2, 3))) ;
7038 extern int asprintf (char **__restrict __ptr,
7039 __const char *__restrict __fmt, ...)
7040 throw () __attribute__ ((__format__ (__printf__, 2, 3))) ;
7048 extern int vdprintf (int __fd, __const char *__restrict __fmt,
7049 __gnuc_va_list __arg)
7050 __attribute__ ((__format__ (__printf__, 2, 0)));
7051 extern int dprintf (int __fd, __const char *__restrict __fmt, ...)
7052 __attribute__ ((__format__ (__printf__, 2, 3)));
7061 extern int fscanf (FILE *__restrict __stream,
7062 __const char *__restrict __format, ...) ;
7067 extern int scanf (__const char *__restrict __format, ...) ;
7069 extern int sscanf (__const char *__restrict __s,
7070 __const char *__restrict __format, ...) throw ();
7079 extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format,
7080 __gnuc_va_list __arg)
7081 __attribute__ ((__format__ (__scanf__, 2, 0))) ;
7087 extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg)
7088 __attribute__ ((__format__ (__scanf__, 1, 0))) ;
7091 extern int vsscanf (__const char *__restrict __s,
7092 __const char *__restrict __format, __gnuc_va_list __arg)
7093 throw () __attribute__ ((__format__ (__scanf__, 2, 0)));
7103 extern int fgetc (FILE *__stream);
7104 extern int getc (FILE *__stream);
7110 extern int getchar (void);
7112 # 464 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7113 extern int getc_unlocked (FILE *__stream);
7114 extern int getchar_unlocked (void);
7115 # 475 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7116 extern int fgetc_unlocked (FILE *__stream);
7128 extern int fputc (int __c, FILE *__stream);
7129 extern int putc (int __c, FILE *__stream);
7135 extern int putchar (int __c);
7137 # 508 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7138 extern int fputc_unlocked (int __c, FILE *__stream);
7146 extern int putc_unlocked (int __c, FILE *__stream);
7147 extern int putchar_unlocked (int __c);
7154 extern int getw (FILE *__stream);
7157 extern int putw (int __w, FILE *__stream);
7166 extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
7174 extern char *gets (char *__s) ;
7176 # 554 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7177 extern char *fgets_unlocked (char *__restrict __s, int __n,
7178 FILE *__restrict __stream) ;
7179 # 570 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7180 extern __ssize_t __getdelim (char **__restrict __lineptr,
7181 size_t *__restrict __n, int __delimiter,
7182 FILE *__restrict __stream) ;
7183 extern __ssize_t getdelim (char **__restrict __lineptr,
7184 size_t *__restrict __n, int __delimiter,
7185 FILE *__restrict __stream) ;
7193 extern __ssize_t getline (char **__restrict __lineptr,
7194 size_t *__restrict __n,
7195 FILE *__restrict __stream) ;
7204 extern int fputs (__const char *__restrict __s, FILE *__restrict __stream);
7210 extern int puts (__const char *__s);
7217 extern int ungetc (int __c, FILE *__stream);
7224 extern size_t fread (void *__restrict __ptr, size_t __size,
7225 size_t __n, FILE *__restrict __stream) ;
7230 extern size_t fwrite (__const void *__restrict __ptr, size_t __size,
7231 size_t __n, FILE *__restrict __s) ;
7233 # 631 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7234 extern int fputs_unlocked (__const char *__restrict __s,
7235 FILE *__restrict __stream);
7236 # 642 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7237 extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
7238 size_t __n, FILE *__restrict __stream) ;
7239 extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size,
7240 size_t __n, FILE *__restrict __stream) ;
7249 extern int fseek (FILE *__stream, long int __off, int __whence);
7254 extern long int ftell (FILE *__stream) ;
7259 extern void rewind (FILE *__stream);
7261 # 678 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7262 extern int fseeko (FILE *__stream, __off_t __off, int __whence);
7267 extern __off_t ftello (FILE *__stream) ;
7268 # 697 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7275 extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos);
7280 extern int fsetpos (FILE *__stream, __const fpos_t *__pos);
7281 # 720 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7285 extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence);
7286 extern __off64_t ftello64 (FILE *__stream) ;
7287 extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos);
7288 extern int fsetpos64 (FILE *__stream, __const fpos64_t *__pos);
7293 extern void clearerr (FILE *__stream) throw ();
7295 extern int feof (FILE *__stream) throw () ;
7297 extern int ferror (FILE *__stream) throw () ;
7302 extern void clearerr_unlocked (FILE *__stream) throw ();
7303 extern int feof_unlocked (FILE *__stream) throw () ;
7304 extern int ferror_unlocked (FILE *__stream) throw () ;
7313 extern void perror (__const char *__s);
7320 # 1 "/usr/include/bits/sys_errlist.h" 1 3 4
7328 # 1 "/usr/include/gentoo-multilib/amd64/bits/sys_errlist.h" 1 3 4
7329 # 27 "/usr/include/gentoo-multilib/amd64/bits/sys_errlist.h" 3 4
7330 extern int sys_nerr;
7331 extern __const char *__const sys_errlist[];
7334 extern int _sys_nerr;
7335 extern __const char *__const _sys_errlist[];
7336 # 9 "/usr/include/bits/sys_errlist.h" 2 3 4
7337 # 759 "/usr/include/gentoo-multilib/amd64/stdio.h" 2 3 4
7342 extern int fileno (FILE *__stream) throw () ;
7347 extern int fileno_unlocked (FILE *__stream) throw () ;
7348 # 778 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7349 extern FILE *popen (__const char *__command, __const char *__modes) ;
7355 extern int pclose (FILE *__stream);
7361 extern char *ctermid (char *__s) throw ();
7367 extern char *cuserid (char *__s);
7375 extern int obstack_printf (struct obstack *__restrict __obstack,
7376 __const char *__restrict __format, ...)
7377 throw () __attribute__ ((__format__ (__printf__, 2, 3)));
7378 extern int obstack_vprintf (struct obstack *__restrict __obstack,
7379 __const char *__restrict __format,
7380 __gnuc_va_list __args)
7381 throw () __attribute__ ((__format__ (__printf__, 2, 0)));
7389 extern void flockfile (FILE *__stream) throw ();
7393 extern int ftrylockfile (FILE *__stream) throw () ;
7396 extern void funlockfile (FILE *__stream) throw ();
7397 # 839 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7398 # 1 "/usr/include/bits/stdio.h" 1 3 4
7406 # 1 "/usr/include/gentoo-multilib/amd64/bits/stdio.h" 1 3 4
7407 # 33 "/usr/include/gentoo-multilib/amd64/bits/stdio.h" 3 4
7409 vprintf (__const char *__restrict __fmt, __gnuc_va_list __arg)
7411 return vfprintf (stdout, __fmt, __arg);
7418 return _IO_getc (stdin);
7425 fgetc_unlocked (FILE *__fp)
7427 return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
7435 getc_unlocked (FILE *__fp)
7437 return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
7442 getchar_unlocked (void)
7444 return (__builtin_expect (((stdin)->_IO_read_ptr >= (stdin)->_IO_read_end), 0) ? __uflow (stdin) : *(unsigned char *) (stdin)->_IO_read_ptr++);
7453 return _IO_putc (__c, stdout);
7460 fputc_unlocked (int __c, FILE *__stream)
7462 return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
7470 putc_unlocked (int __c, FILE *__stream)
7472 return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
7477 putchar_unlocked (int __c)
7479 return (__builtin_expect (((stdout)->_IO_write_ptr >= (stdout)->_IO_write_end), 0) ? __overflow (stdout, (unsigned char) (__c)) : (unsigned char) (*(stdout)->_IO_write_ptr++ = (__c)));
7487 getline (char **__lineptr, size_t *__n, FILE *__stream)
7489 return __getdelim (__lineptr, __n, '\n', __stream);
7497 feof_unlocked (FILE *__stream) throw ()
7499 return (((__stream)->_flags & 0x10) != 0);
7504 ferror_unlocked (FILE *__stream) throw ()
7506 return (((__stream)->_flags & 0x20) != 0);
7508 # 9 "/usr/include/bits/stdio.h" 2 3 4
7509 # 840 "/usr/include/gentoo-multilib/amd64/stdio.h" 2 3 4
7510 # 848 "/usr/include/gentoo-multilib/amd64/stdio.h" 3 4
7512 # 9 "/usr/include/stdio.h" 2 3 4
7513 # 53 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qtextstream.h" 2
7521 typedef QtValidLicenseForCoreModule QtCoreModule;
7526 class QTextStreamPrivate;
7529 inline QTextStreamPrivate* d_func() { return reinterpret_cast<QTextStreamPrivate *>(d_ptr); } inline const QTextStreamPrivate* d_func() const { return reinterpret_cast<const QTextStreamPrivate *>(d_ptr); } friend class QTextStreamPrivate;
7532 enum RealNumberNotation {
7537 enum FieldAlignment {
7541 AlignAccountingStyle
7552 UppercaseBase = 0x8,
7553 UppercaseDigits = 0x10
7555 typedef QFlags<NumberFlag> NumberFlags;
7558 explicit QTextStream(QIODevice *device);
7559 explicit QTextStream(FILE *fileHandle, QIODevice::OpenMode openMode = QIODevice::ReadWrite);
7560 explicit QTextStream(QString *string, QIODevice::OpenMode openMode = QIODevice::ReadWrite);
7561 explicit QTextStream(QByteArray *array, QIODevice::OpenMode openMode = QIODevice::ReadWrite);
7562 explicit QTextStream(const QByteArray &array, QIODevice::OpenMode openMode = QIODevice::ReadOnly);
7563 virtual ~QTextStream();
7564 # 114 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qtextstream.h"
7565 void setDevice(QIODevice *device);
7566 QIODevice *device() const;
7568 void setString(QString *string, QIODevice::OpenMode openMode = QIODevice::ReadWrite);
7569 QString *string() const;
7571 Status status() const;
7572 void setStatus(Status status);
7578 bool seek(qint64 pos);
7581 void skipWhiteSpace();
7583 QString readLine(qint64 maxlen = 0);
7585 QString read(qint64 maxlen);
7587 void setFieldAlignment(FieldAlignment alignment);
7588 FieldAlignment fieldAlignment() const;
7590 void setPadChar(QChar ch);
7591 QChar padChar() const;
7593 void setFieldWidth(int width);
7594 int fieldWidth() const;
7596 void setNumberFlags(NumberFlags flags);
7597 NumberFlags numberFlags() const;
7599 void setIntegerBase(int base);
7600 int integerBase() const;
7602 void setRealNumberNotation(RealNumberNotation notation);
7603 RealNumberNotation realNumberNotation() const;
7605 void setRealNumberPrecision(int precision);
7606 int realNumberPrecision() const;
7608 QTextStream &operator>>(QChar &ch);
7609 QTextStream &operator>>(char &ch);
7610 QTextStream &operator>>(signed short &i);
7611 QTextStream &operator>>(unsigned short &i);
7612 QTextStream &operator>>(signed int &i);
7613 QTextStream &operator>>(unsigned int &i);
7614 QTextStream &operator>>(signed long &i);
7615 QTextStream &operator>>(unsigned long &i);
7616 QTextStream &operator>>(qlonglong &i);
7617 QTextStream &operator>>(qulonglong &i);
7618 QTextStream &operator>>(float &f);
7619 QTextStream &operator>>(double &f);
7620 QTextStream &operator>>(QString &s);
7621 QTextStream &operator>>(QByteArray &array);
7622 QTextStream &operator>>(char *c);
7624 QTextStream &operator<<(QBool b);
7625 QTextStream &operator<<(QChar ch);
7626 QTextStream &operator<<(char ch);
7627 QTextStream &operator<<(signed short i);
7628 QTextStream &operator<<(unsigned short i);
7629 QTextStream &operator<<(signed int i);
7630 QTextStream &operator<<(unsigned int i);
7631 QTextStream &operator<<(signed long i);
7632 QTextStream &operator<<(unsigned long i);
7633 QTextStream &operator<<(qlonglong i);
7634 QTextStream &operator<<(qulonglong i);
7635 QTextStream &operator<<(float f);
7636 QTextStream &operator<<(double f);
7637 QTextStream &operator<<(const QString &s);
7638 QTextStream &operator<<(const QByteArray &array);
7639 QTextStream &operator<<(const char *c);
7640 QTextStream &operator<<(const void *ptr);
7641 # 242 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qtextstream.h"
7648 QTextStream(const QTextStream &); QTextStream &operator=(const QTextStream &);
7650 QTextStreamPrivate *d_ptr;
7653 inline QFlags<QTextStream::NumberFlags::enum_type> operator|(QTextStream::NumberFlags::enum_type f1, QTextStream::NumberFlags::enum_type f2) { return QFlags<QTextStream::NumberFlags::enum_type>(f1) | f2; } inline QFlags<QTextStream::NumberFlags::enum_type> operator|(QTextStream::NumberFlags::enum_type f1, QFlags<QTextStream::NumberFlags::enum_type> f2) { return f2 | f1; }
7659 typedef QTextStream & (*QTextStreamFunction)(QTextStream &);
7660 typedef void (QTextStream::*QTSMFI)(int);
7661 typedef void (QTextStream::*QTSMFC)(QChar);
7663 class QTextStreamManipulator
7666 QTextStreamManipulator(QTSMFI m, int a) { mf = m; mc = 0; arg = a; }
7667 QTextStreamManipulator(QTSMFC m, QChar c) { mf = 0; mc = m; ch = c; }
7668 void exec(QTextStream &s) { if (mf) { (s.*mf)(arg); } else { (s.*mc)(ch); } }
7677 inline QTextStream &operator>>(QTextStream &s, QTextStreamFunction f)
7680 inline QTextStream &operator<<(QTextStream &s, QTextStreamFunction f)
7683 inline QTextStream &operator<<(QTextStream &s, QTextStreamManipulator m)
7684 { m.exec(s); return s; }
7686 QTextStream &bin(QTextStream &s);
7687 QTextStream &oct(QTextStream &s);
7688 QTextStream &dec(QTextStream &s);
7689 QTextStream &hex(QTextStream &s);
7691 QTextStream &showbase(QTextStream &s);
7692 QTextStream &forcesign(QTextStream &s);
7693 QTextStream &forcepoint(QTextStream &s);
7694 QTextStream &noshowbase(QTextStream &s);
7695 QTextStream &noforcesign(QTextStream &s);
7696 QTextStream &noforcepoint(QTextStream &s);
7698 QTextStream &uppercasebase(QTextStream &s);
7699 QTextStream &uppercasedigits(QTextStream &s);
7700 QTextStream &lowercasebase(QTextStream &s);
7701 QTextStream &lowercasedigits(QTextStream &s);
7703 QTextStream &fixed(QTextStream &s);
7704 QTextStream &scientific(QTextStream &s);
7706 QTextStream &left(QTextStream &s);
7707 QTextStream &right(QTextStream &s);
7708 QTextStream ¢er(QTextStream &s);
7710 QTextStream &endl(QTextStream &s);
7711 QTextStream &flush(QTextStream &s);
7712 QTextStream &reset(QTextStream &s);
7714 QTextStream &bom(QTextStream &s);
7716 QTextStream &ws(QTextStream &s);
7718 inline QTextStreamManipulator qSetFieldWidth(int width)
7720 QTSMFI func = &QTextStream::setFieldWidth;
7721 return QTextStreamManipulator(func,width);
7724 inline QTextStreamManipulator qSetPadChar(QChar ch)
7726 QTSMFC func = &QTextStream::setPadChar;
7727 return QTextStreamManipulator(func, ch);
7730 inline QTextStreamManipulator qSetRealNumberPrecision(int precision)
7732 QTSMFI func = &QTextStream::setRealNumberPrecision;
7733 return QTextStreamManipulator(func, precision);
7735 # 362 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qtextstream.h"
7737 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qtextstream.h" 2
7738 # 44 "./project.h" 2
7739 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
7740 # 45 "./project.h" 2
7741 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstack.h" 1
7742 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstack.h" 1
7743 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstack.h"
7744 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qvector.h" 1
7745 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h" 1
7746 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h"
7747 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qiterator.h" 1
7748 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h" 2
7749 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic.h" 1
7750 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h" 2
7751 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qalgorithms.h" 1
7752 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h" 2
7753 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qlist.h" 1
7754 # 46 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h" 2
7760 # 1 "/usr/include/stdlib.h" 1 3 4
7768 # 1 "/usr/include/gentoo-multilib/amd64/stdlib.h" 1 3 4
7769 # 25 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
7770 # 1 "/usr/include/features.h" 1 3 4
7771 # 26 "/usr/include/gentoo-multilib/amd64/stdlib.h" 2 3 4
7779 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
7780 # 34 "/usr/include/gentoo-multilib/amd64/stdlib.h" 2 3 4
7789 # 1 "/usr/include/bits/waitflags.h" 1 3 4
7797 # 1 "/usr/include/gentoo-multilib/amd64/bits/waitflags.h" 1 3 4
7798 # 9 "/usr/include/bits/waitflags.h" 2 3 4
7799 # 43 "/usr/include/gentoo-multilib/amd64/stdlib.h" 2 3 4
7800 # 1 "/usr/include/bits/waitstatus.h" 1 3 4
7808 # 1 "/usr/include/gentoo-multilib/amd64/bits/waitstatus.h" 1 3 4
7809 # 65 "/usr/include/gentoo-multilib/amd64/bits/waitstatus.h" 3 4
7810 # 1 "/usr/include/endian.h" 1 3 4
7818 # 1 "/usr/include/gentoo-multilib/amd64/endian.h" 1 3 4
7819 # 22 "/usr/include/gentoo-multilib/amd64/endian.h" 3 4
7820 # 1 "/usr/include/features.h" 1 3 4
7821 # 23 "/usr/include/gentoo-multilib/amd64/endian.h" 2 3 4
7822 # 37 "/usr/include/gentoo-multilib/amd64/endian.h" 3 4
7823 # 1 "/usr/include/bits/endian.h" 1 3 4
7831 # 1 "/usr/include/gentoo-multilib/amd64/bits/endian.h" 1 3 4
7832 # 9 "/usr/include/bits/endian.h" 2 3 4
7833 # 38 "/usr/include/gentoo-multilib/amd64/endian.h" 2 3 4
7834 # 9 "/usr/include/endian.h" 2 3 4
7835 # 66 "/usr/include/gentoo-multilib/amd64/bits/waitstatus.h" 2 3 4
7843 unsigned int __w_termsig:7;
7844 unsigned int __w_coredump:1;
7845 unsigned int __w_retcode:8;
7854 } __wait_terminated;
7858 unsigned int __w_stopval:8;
7859 unsigned int __w_stopsig:8;
7869 # 9 "/usr/include/bits/waitstatus.h" 2 3 4
7870 # 44 "/usr/include/gentoo-multilib/amd64/stdlib.h" 2 3 4
7871 # 96 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
7894 __extension__ typedef struct
7901 # 140 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
7902 extern size_t __ctype_get_mb_cur_max (void) throw () ;
7907 extern double atof (__const char *__nptr)
7908 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
7910 extern int atoi (__const char *__nptr)
7911 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
7913 extern long int atol (__const char *__nptr)
7914 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
7920 __extension__ extern long long int atoll (__const char *__nptr)
7921 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
7927 extern double strtod (__const char *__restrict __nptr,
7928 char **__restrict __endptr)
7929 throw () __attribute__ ((__nonnull__ (1))) ;
7935 extern float strtof (__const char *__restrict __nptr,
7936 char **__restrict __endptr) throw () __attribute__ ((__nonnull__ (1))) ;
7938 extern long double strtold (__const char *__restrict __nptr,
7939 char **__restrict __endptr)
7940 throw () __attribute__ ((__nonnull__ (1))) ;
7946 extern long int strtol (__const char *__restrict __nptr,
7947 char **__restrict __endptr, int __base)
7948 throw () __attribute__ ((__nonnull__ (1))) ;
7950 extern unsigned long int strtoul (__const char *__restrict __nptr,
7951 char **__restrict __endptr, int __base)
7952 throw () __attribute__ ((__nonnull__ (1))) ;
7958 extern long long int strtoq (__const char *__restrict __nptr,
7959 char **__restrict __endptr, int __base)
7960 throw () __attribute__ ((__nonnull__ (1))) ;
7963 extern unsigned long long int strtouq (__const char *__restrict __nptr,
7964 char **__restrict __endptr, int __base)
7965 throw () __attribute__ ((__nonnull__ (1))) ;
7972 extern long long int strtoll (__const char *__restrict __nptr,
7973 char **__restrict __endptr, int __base)
7974 throw () __attribute__ ((__nonnull__ (1))) ;
7977 extern unsigned long long int strtoull (__const char *__restrict __nptr,
7978 char **__restrict __endptr, int __base)
7979 throw () __attribute__ ((__nonnull__ (1))) ;
7981 # 236 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
7982 # 1 "/usr/include/xlocale.h" 1 3 4
7983 # 237 "/usr/include/gentoo-multilib/amd64/stdlib.h" 2 3 4
7987 extern long int strtol_l (__const char *__restrict __nptr,
7988 char **__restrict __endptr, int __base,
7989 __locale_t __loc) throw () __attribute__ ((__nonnull__ (1, 4))) ;
7991 extern unsigned long int strtoul_l (__const char *__restrict __nptr,
7992 char **__restrict __endptr,
7993 int __base, __locale_t __loc)
7994 throw () __attribute__ ((__nonnull__ (1, 4))) ;
7997 extern long long int strtoll_l (__const char *__restrict __nptr,
7998 char **__restrict __endptr, int __base,
8000 throw () __attribute__ ((__nonnull__ (1, 4))) ;
8003 extern unsigned long long int strtoull_l (__const char *__restrict __nptr,
8004 char **__restrict __endptr,
8005 int __base, __locale_t __loc)
8006 throw () __attribute__ ((__nonnull__ (1, 4))) ;
8008 extern double strtod_l (__const char *__restrict __nptr,
8009 char **__restrict __endptr, __locale_t __loc)
8010 throw () __attribute__ ((__nonnull__ (1, 3))) ;
8012 extern float strtof_l (__const char *__restrict __nptr,
8013 char **__restrict __endptr, __locale_t __loc)
8014 throw () __attribute__ ((__nonnull__ (1, 3))) ;
8016 extern long double strtold_l (__const char *__restrict __nptr,
8017 char **__restrict __endptr,
8019 throw () __attribute__ ((__nonnull__ (1, 3))) ;
8026 extern double __strtod_internal (__const char *__restrict __nptr,
8027 char **__restrict __endptr, int __group)
8028 throw () __attribute__ ((__nonnull__ (1))) ;
8029 extern float __strtof_internal (__const char *__restrict __nptr,
8030 char **__restrict __endptr, int __group)
8031 throw () __attribute__ ((__nonnull__ (1))) ;
8032 extern long double __strtold_internal (__const char *__restrict __nptr,
8033 char **__restrict __endptr,
8035 throw () __attribute__ ((__nonnull__ (1))) ;
8037 extern long int __strtol_internal (__const char *__restrict __nptr,
8038 char **__restrict __endptr,
8039 int __base, int __group)
8040 throw () __attribute__ ((__nonnull__ (1))) ;
8044 extern unsigned long int __strtoul_internal (__const char *__restrict __nptr,
8045 char **__restrict __endptr,
8046 int __base, int __group)
8047 throw () __attribute__ ((__nonnull__ (1))) ;
8053 extern long long int __strtoll_internal (__const char *__restrict __nptr,
8054 char **__restrict __endptr,
8055 int __base, int __group)
8056 throw () __attribute__ ((__nonnull__ (1))) ;
8061 extern unsigned long long int __strtoull_internal (__const char *
8063 char **__restrict __endptr,
8064 int __base, int __group)
8065 throw () __attribute__ ((__nonnull__ (1))) ;
8074 extern __inline double
8075 strtod (__const char *__restrict __nptr, char **__restrict __endptr) throw ()
8077 return __strtod_internal (__nptr, __endptr, 0);
8079 extern __inline long int
8080 strtol (__const char *__restrict __nptr, char **__restrict __endptr, int __base) throw ()
8083 return __strtol_internal (__nptr, __endptr, __base, 0);
8085 extern __inline unsigned long int
8086 strtoul (__const char *__restrict __nptr, char **__restrict __endptr, int __base) throw ()
8089 return __strtoul_internal (__nptr, __endptr, __base, 0);
8095 extern __inline float
8096 strtof (__const char *__restrict __nptr, char **__restrict __endptr) throw ()
8098 return __strtof_internal (__nptr, __endptr, 0);
8101 extern __inline long double
8102 strtold (__const char *__restrict __nptr, char **__restrict __endptr) throw ()
8104 return __strtold_internal (__nptr, __endptr, 0);
8111 __extension__ extern __inline long long int
8112 strtoq (__const char *__restrict __nptr, char **__restrict __endptr, int __base) throw ()
8115 return __strtoll_internal (__nptr, __endptr, __base, 0);
8117 __extension__ extern __inline unsigned long long int
8118 strtouq (__const char *__restrict __nptr, char **__restrict __endptr, int __base) throw ()
8121 return __strtoull_internal (__nptr, __endptr, __base, 0);
8127 __extension__ extern __inline long long int
8128 strtoll (__const char *__restrict __nptr, char **__restrict __endptr, int __base) throw ()
8131 return __strtoll_internal (__nptr, __endptr, __base, 0);
8133 __extension__ extern __inline unsigned long long int
8134 strtoull (__const char * __restrict __nptr, char **__restrict __endptr, int __base) throw ()
8137 return __strtoull_internal (__nptr, __endptr, __base, 0);
8143 extern __inline double
8144 atof (__const char *__nptr) throw ()
8146 return strtod (__nptr, (char **) __null);
8149 atoi (__const char *__nptr) throw ()
8151 return (int) strtol (__nptr, (char **) __null, 10);
8153 extern __inline long int
8154 atol (__const char *__nptr) throw ()
8156 return strtol (__nptr, (char **) __null, 10);
8162 __extension__ extern __inline long long int
8163 atoll (__const char *__nptr) throw ()
8165 return strtoll (__nptr, (char **) __null, 10);
8168 # 429 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
8169 extern char *l64a (long int __n) throw () ;
8172 extern long int a64l (__const char *__s)
8173 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
8178 # 1 "/usr/include/sys/types.h" 1 3 4
8186 # 1 "/usr/include/gentoo-multilib/amd64/sys/types.h" 1 3 4
8187 # 27 "/usr/include/gentoo-multilib/amd64/sys/types.h" 3 4
8188 # 1 "/usr/include/features.h" 1 3 4
8189 # 28 "/usr/include/gentoo-multilib/amd64/sys/types.h" 2 3 4
8193 # 1 "/usr/include/bits/types.h" 1 3 4
8194 # 32 "/usr/include/gentoo-multilib/amd64/sys/types.h" 2 3 4
8198 typedef __u_char u_char;
8199 typedef __u_short u_short;
8200 typedef __u_int u_int;
8201 typedef __u_long u_long;
8202 typedef __quad_t quad_t;
8203 typedef __u_quad_t u_quad_t;
8204 typedef __fsid_t fsid_t;
8209 typedef __loff_t loff_t;
8213 typedef __ino_t ino_t;
8220 typedef __ino64_t ino64_t;
8225 typedef __dev_t dev_t;
8230 typedef __gid_t gid_t;
8235 typedef __mode_t mode_t;
8240 typedef __nlink_t nlink_t;
8245 typedef __uid_t uid_t;
8251 typedef __off_t off_t;
8258 typedef __off64_t off64_t;
8263 typedef __pid_t pid_t;
8268 typedef __id_t id_t;
8273 typedef __ssize_t ssize_t;
8279 typedef __daddr_t daddr_t;
8280 typedef __caddr_t caddr_t;
8286 typedef __key_t key_t;
8287 # 133 "/usr/include/gentoo-multilib/amd64/sys/types.h" 3 4
8288 # 1 "/usr/include/time.h" 1 3 4
8296 # 1 "/usr/include/gentoo-multilib/amd64/time.h" 1 3 4
8297 # 57 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
8298 # 1 "/usr/include/bits/types.h" 1 3 4
8299 # 58 "/usr/include/gentoo-multilib/amd64/time.h" 2 3 4
8303 typedef __clock_t clock_t;
8307 # 73 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
8308 # 1 "/usr/include/bits/types.h" 1 3 4
8309 # 74 "/usr/include/gentoo-multilib/amd64/time.h" 2 3 4
8313 typedef __time_t time_t;
8317 # 90 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
8318 # 1 "/usr/include/bits/types.h" 1 3 4
8319 # 91 "/usr/include/gentoo-multilib/amd64/time.h" 2 3 4
8322 typedef __clockid_t clockid_t;
8323 # 102 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
8324 # 1 "/usr/include/bits/types.h" 1 3 4
8325 # 103 "/usr/include/gentoo-multilib/amd64/time.h" 2 3 4
8328 typedef __timer_t timer_t;
8329 # 9 "/usr/include/time.h" 2 3 4
8330 # 134 "/usr/include/gentoo-multilib/amd64/sys/types.h" 2 3 4
8334 typedef __useconds_t useconds_t;
8338 typedef __suseconds_t suseconds_t;
8344 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
8345 # 148 "/usr/include/gentoo-multilib/amd64/sys/types.h" 2 3 4
8349 typedef unsigned long int ulong;
8350 typedef unsigned short int ushort;
8351 typedef unsigned int uint;
8352 # 195 "/usr/include/gentoo-multilib/amd64/sys/types.h" 3 4
8353 typedef int int8_t __attribute__ ((__mode__ (__QI__)));
8354 typedef int int16_t __attribute__ ((__mode__ (__HI__)));
8355 typedef int int32_t __attribute__ ((__mode__ (__SI__)));
8356 typedef int int64_t __attribute__ ((__mode__ (__DI__)));
8359 typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__)));
8360 typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__)));
8361 typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__)));
8362 typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__)));
8364 typedef int register_t __attribute__ ((__mode__ (__word__)));
8365 # 217 "/usr/include/gentoo-multilib/amd64/sys/types.h" 3 4
8366 # 1 "/usr/include/endian.h" 1 3 4
8367 # 218 "/usr/include/gentoo-multilib/amd64/sys/types.h" 2 3 4
8370 # 1 "/usr/include/sys/select.h" 1 3 4
8378 # 1 "/usr/include/gentoo-multilib/amd64/sys/select.h" 1 3 4
8379 # 25 "/usr/include/gentoo-multilib/amd64/sys/select.h" 3 4
8380 # 1 "/usr/include/features.h" 1 3 4
8381 # 26 "/usr/include/gentoo-multilib/amd64/sys/select.h" 2 3 4
8384 # 1 "/usr/include/bits/types.h" 1 3 4
8385 # 29 "/usr/include/gentoo-multilib/amd64/sys/select.h" 2 3 4
8388 # 1 "/usr/include/bits/select.h" 1 3 4
8396 # 1 "/usr/include/gentoo-multilib/amd64/bits/select.h" 1 3 4
8397 # 9 "/usr/include/bits/select.h" 2 3 4
8398 # 32 "/usr/include/gentoo-multilib/amd64/sys/select.h" 2 3 4
8401 # 1 "/usr/include/bits/sigset.h" 1 3 4
8409 # 1 "/usr/include/gentoo-multilib/amd64/bits/sigset.h" 1 3 4
8410 # 24 "/usr/include/gentoo-multilib/amd64/bits/sigset.h" 3 4
8411 typedef int __sig_atomic_t;
8418 unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))];
8420 # 9 "/usr/include/bits/sigset.h" 2 3 4
8421 # 35 "/usr/include/gentoo-multilib/amd64/sys/select.h" 2 3 4
8425 typedef __sigset_t sigset_t;
8431 # 1 "/usr/include/time.h" 1 3 4
8439 # 1 "/usr/include/gentoo-multilib/amd64/time.h" 1 3 4
8440 # 117 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
8441 # 1 "/usr/include/bits/types.h" 1 3 4
8442 # 118 "/usr/include/gentoo-multilib/amd64/time.h" 2 3 4
8451 # 9 "/usr/include/time.h" 2 3 4
8452 # 45 "/usr/include/gentoo-multilib/amd64/sys/select.h" 2 3 4
8454 # 1 "/usr/include/bits/time.h" 1 3 4
8462 # 1 "/usr/include/gentoo-multilib/amd64/bits/time.h" 1 3 4
8463 # 65 "/usr/include/gentoo-multilib/amd64/bits/time.h" 3 4
8464 # 1 "/usr/include/bits/types.h" 1 3 4
8465 # 66 "/usr/include/gentoo-multilib/amd64/bits/time.h" 2 3 4
8472 __suseconds_t tv_usec;
8474 # 9 "/usr/include/bits/time.h" 2 3 4
8475 # 47 "/usr/include/gentoo-multilib/amd64/sys/select.h" 2 3 4
8476 # 55 "/usr/include/gentoo-multilib/amd64/sys/select.h" 3 4
8477 typedef long int __fd_mask;
8478 # 67 "/usr/include/gentoo-multilib/amd64/sys/select.h" 3 4
8484 __fd_mask fds_bits[1024 / (8 * sizeof (__fd_mask))];
8497 typedef __fd_mask fd_mask;
8498 # 99 "/usr/include/gentoo-multilib/amd64/sys/select.h" 3 4
8500 # 109 "/usr/include/gentoo-multilib/amd64/sys/select.h" 3 4
8501 extern int select (int __nfds, fd_set *__restrict __readfds,
8502 fd_set *__restrict __writefds,
8503 fd_set *__restrict __exceptfds,
8504 struct timeval *__restrict __timeout);
8505 # 121 "/usr/include/gentoo-multilib/amd64/sys/select.h" 3 4
8506 extern int pselect (int __nfds, fd_set *__restrict __readfds,
8507 fd_set *__restrict __writefds,
8508 fd_set *__restrict __exceptfds,
8509 const struct timespec *__restrict __timeout,
8510 const __sigset_t *__restrict __sigmask);
8514 # 9 "/usr/include/sys/select.h" 2 3 4
8515 # 221 "/usr/include/gentoo-multilib/amd64/sys/types.h" 2 3 4
8518 # 1 "/usr/include/sys/sysmacros.h" 1 3 4
8526 # 1 "/usr/include/gentoo-multilib/amd64/sys/sysmacros.h" 1 3 4
8527 # 24 "/usr/include/gentoo-multilib/amd64/sys/sysmacros.h" 3 4
8528 # 1 "/usr/include/features.h" 1 3 4
8529 # 25 "/usr/include/gentoo-multilib/amd64/sys/sysmacros.h" 2 3 4
8536 extern __inline unsigned int gnu_dev_major (unsigned long long int __dev)
8539 extern __inline unsigned int gnu_dev_minor (unsigned long long int __dev)
8542 extern __inline unsigned long long int gnu_dev_makedev (unsigned int __major,
8543 unsigned int __minor)
8547 __extension__ extern __inline unsigned int
8548 gnu_dev_major (unsigned long long int __dev) throw ()
8550 return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff);
8553 __extension__ extern __inline unsigned int
8554 gnu_dev_minor (unsigned long long int __dev) throw ()
8556 return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff);
8559 __extension__ extern __inline unsigned long long int
8560 gnu_dev_makedev (unsigned int __major, unsigned int __minor) throw ()
8562 return ((__minor & 0xff) | ((__major & 0xfff) << 8)
8563 | (((unsigned long long int) (__minor & ~0xff)) << 12)
8564 | (((unsigned long long int) (__major & ~0xfff)) << 32));
8566 # 9 "/usr/include/sys/sysmacros.h" 2 3 4
8567 # 224 "/usr/include/gentoo-multilib/amd64/sys/types.h" 2 3 4
8572 typedef __blksize_t blksize_t;
8579 typedef __blkcnt_t blkcnt_t;
8583 typedef __fsblkcnt_t fsblkcnt_t;
8587 typedef __fsfilcnt_t fsfilcnt_t;
8588 # 262 "/usr/include/gentoo-multilib/amd64/sys/types.h" 3 4
8589 typedef __blkcnt64_t blkcnt64_t;
8590 typedef __fsblkcnt64_t fsblkcnt64_t;
8591 typedef __fsfilcnt64_t fsfilcnt64_t;
8597 # 1 "/usr/include/bits/pthreadtypes.h" 1 3 4
8605 # 1 "/usr/include/gentoo-multilib/amd64/bits/pthreadtypes.h" 1 3 4
8606 # 23 "/usr/include/gentoo-multilib/amd64/bits/pthreadtypes.h" 3 4
8607 # 1 "/usr/include/bits/wordsize.h" 1 3 4
8615 # 1 "/usr/include/gentoo-multilib/amd64/bits/wordsize.h" 1 3 4
8616 # 9 "/usr/include/bits/wordsize.h" 2 3 4
8617 # 24 "/usr/include/gentoo-multilib/amd64/bits/pthreadtypes.h" 2 3 4
8618 # 50 "/usr/include/gentoo-multilib/amd64/bits/pthreadtypes.h" 3 4
8619 typedef unsigned long int pthread_t;
8630 typedef struct __pthread_internal_list
8632 struct __pthread_internal_list *__prev;
8633 struct __pthread_internal_list *__next;
8635 # 76 "/usr/include/gentoo-multilib/amd64/bits/pthreadtypes.h" 3 4
8638 struct __pthread_mutex_s
8641 unsigned int __count;
8644 unsigned int __nusers;
8651 __pthread_list_t __list;
8652 # 101 "/usr/include/gentoo-multilib/amd64/bits/pthreadtypes.h" 3 4
8662 } pthread_mutexattr_t;
8672 unsigned int __futex;
8673 __extension__ unsigned long long int __total_seq;
8674 __extension__ unsigned long long int __wakeup_seq;
8675 __extension__ unsigned long long int __woken_seq;
8677 unsigned int __nwaiters;
8678 unsigned int __broadcast_seq;
8681 __extension__ long long int __align;
8688 } pthread_condattr_t;
8692 typedef unsigned int pthread_key_t;
8696 typedef int pthread_once_t;
8708 unsigned int __nr_readers;
8709 unsigned int __readers_wakeup;
8710 unsigned int __writer_wakeup;
8711 unsigned int __nr_readers_queued;
8712 unsigned int __nr_writers_queued;
8715 unsigned long int __pad2;
8716 unsigned long int __pad3;
8719 unsigned int __flags;
8721 # 184 "/usr/include/gentoo-multilib/amd64/bits/pthreadtypes.h" 3 4
8730 } pthread_rwlockattr_t;
8736 typedef volatile int pthread_spinlock_t;
8745 } pthread_barrier_t;
8751 } pthread_barrierattr_t;
8752 # 9 "/usr/include/bits/pthreadtypes.h" 2 3 4
8753 # 271 "/usr/include/gentoo-multilib/amd64/sys/types.h" 2 3 4
8757 # 9 "/usr/include/sys/types.h" 2 3 4
8758 # 439 "/usr/include/gentoo-multilib/amd64/stdlib.h" 2 3 4
8765 extern long int random (void) throw ();
8768 extern void srandom (unsigned int __seed) throw ();
8774 extern char *initstate (unsigned int __seed, char *__statebuf,
8775 size_t __statelen) throw () __attribute__ ((__nonnull__ (2)));
8779 extern char *setstate (char *__statebuf) throw () __attribute__ ((__nonnull__ (1)));
8798 extern int random_r (struct random_data *__restrict __buf,
8799 int32_t *__restrict __result) throw () __attribute__ ((__nonnull__ (1, 2)));
8801 extern int srandom_r (unsigned int __seed, struct random_data *__buf)
8802 throw () __attribute__ ((__nonnull__ (2)));
8804 extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
8806 struct random_data *__restrict __buf)
8807 throw () __attribute__ ((__nonnull__ (2, 4)));
8809 extern int setstate_r (char *__restrict __statebuf,
8810 struct random_data *__restrict __buf)
8811 throw () __attribute__ ((__nonnull__ (1, 2)));
8818 extern int rand (void) throw ();
8820 extern void srand (unsigned int __seed) throw ();
8825 extern int rand_r (unsigned int *__seed) throw ();
8833 extern double drand48 (void) throw ();
8834 extern double erand48 (unsigned short int __xsubi[3]) throw () __attribute__ ((__nonnull__ (1)));
8837 extern long int lrand48 (void) throw ();
8838 extern long int nrand48 (unsigned short int __xsubi[3])
8839 throw () __attribute__ ((__nonnull__ (1)));
8842 extern long int mrand48 (void) throw ();
8843 extern long int jrand48 (unsigned short int __xsubi[3])
8844 throw () __attribute__ ((__nonnull__ (1)));
8847 extern void srand48 (long int __seedval) throw ();
8848 extern unsigned short int *seed48 (unsigned short int __seed16v[3])
8849 throw () __attribute__ ((__nonnull__ (1)));
8850 extern void lcong48 (unsigned short int __param[7]) throw () __attribute__ ((__nonnull__ (1)));
8858 unsigned short int __x[3];
8859 unsigned short int __old_x[3];
8860 unsigned short int __c;
8861 unsigned short int __init;
8862 unsigned long long int __a;
8866 extern int drand48_r (struct drand48_data *__restrict __buffer,
8867 double *__restrict __result) throw () __attribute__ ((__nonnull__ (1, 2)));
8868 extern int erand48_r (unsigned short int __xsubi[3],
8869 struct drand48_data *__restrict __buffer,
8870 double *__restrict __result) throw () __attribute__ ((__nonnull__ (1, 2)));
8873 extern int lrand48_r (struct drand48_data *__restrict __buffer,
8874 long int *__restrict __result)
8875 throw () __attribute__ ((__nonnull__ (1, 2)));
8876 extern int nrand48_r (unsigned short int __xsubi[3],
8877 struct drand48_data *__restrict __buffer,
8878 long int *__restrict __result)
8879 throw () __attribute__ ((__nonnull__ (1, 2)));
8882 extern int mrand48_r (struct drand48_data *__restrict __buffer,
8883 long int *__restrict __result)
8884 throw () __attribute__ ((__nonnull__ (1, 2)));
8885 extern int jrand48_r (unsigned short int __xsubi[3],
8886 struct drand48_data *__restrict __buffer,
8887 long int *__restrict __result)
8888 throw () __attribute__ ((__nonnull__ (1, 2)));
8891 extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
8892 throw () __attribute__ ((__nonnull__ (2)));
8894 extern int seed48_r (unsigned short int __seed16v[3],
8895 struct drand48_data *__buffer) throw () __attribute__ ((__nonnull__ (1, 2)));
8897 extern int lcong48_r (unsigned short int __param[7],
8898 struct drand48_data *__buffer)
8899 throw () __attribute__ ((__nonnull__ (1, 2)));
8909 extern void *malloc (size_t __size) throw () __attribute__ ((__malloc__)) ;
8911 extern void *calloc (size_t __nmemb, size_t __size)
8912 throw () __attribute__ ((__malloc__)) ;
8920 extern void *realloc (void *__ptr, size_t __size)
8921 throw () __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
8923 extern void free (void *__ptr) throw ();
8928 extern void cfree (void *__ptr) throw ();
8932 # 1 "/usr/include/alloca.h" 1 3 4
8940 # 1 "/usr/include/gentoo-multilib/amd64/alloca.h" 1 3 4
8941 # 22 "/usr/include/gentoo-multilib/amd64/alloca.h" 3 4
8942 # 1 "/usr/include/features.h" 1 3 4
8943 # 23 "/usr/include/gentoo-multilib/amd64/alloca.h" 2 3 4
8946 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
8947 # 26 "/usr/include/gentoo-multilib/amd64/alloca.h" 2 3 4
8955 extern void *alloca (size_t __size) throw ();
8962 # 9 "/usr/include/alloca.h" 2 3 4
8963 # 613 "/usr/include/gentoo-multilib/amd64/stdlib.h" 2 3 4
8968 extern void *valloc (size_t __size) throw () __attribute__ ((__malloc__)) ;
8973 extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size)
8974 throw () __attribute__ ((__nonnull__ (1))) ;
8979 extern void abort (void) throw () __attribute__ ((__noreturn__));
8983 extern int atexit (void (*__func) (void)) throw () __attribute__ ((__nonnull__ (1)));
8989 extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)
8990 throw () __attribute__ ((__nonnull__ (1)));
8997 extern void exit (int __status) throw () __attribute__ ((__noreturn__));
9004 extern void _Exit (int __status) throw () __attribute__ ((__noreturn__));
9011 extern char *getenv (__const char *__name) throw () __attribute__ ((__nonnull__ (1))) ;
9016 extern char *__secure_getenv (__const char *__name)
9017 throw () __attribute__ ((__nonnull__ (1))) ;
9023 extern int putenv (char *__string) throw () __attribute__ ((__nonnull__ (1)));
9029 extern int setenv (__const char *__name, __const char *__value, int __replace)
9030 throw () __attribute__ ((__nonnull__ (2)));
9033 extern int unsetenv (__const char *__name) throw ();
9040 extern int clearenv (void) throw ();
9041 # 698 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
9042 extern char *mktemp (char *__template) throw () __attribute__ ((__nonnull__ (1))) ;
9043 # 709 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
9044 extern int mkstemp (char *__template) __attribute__ ((__nonnull__ (1))) ;
9045 # 719 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
9046 extern int mkstemp64 (char *__template) __attribute__ ((__nonnull__ (1))) ;
9047 # 729 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
9048 extern char *mkdtemp (char *__template) throw () __attribute__ ((__nonnull__ (1))) ;
9057 extern int system (__const char *__command) ;
9064 extern char *canonicalize_file_name (__const char *__name)
9065 throw () __attribute__ ((__nonnull__ (1))) ;
9066 # 755 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
9067 extern char *realpath (__const char *__restrict __name,
9068 char *__restrict __resolved) throw () ;
9075 typedef int (*__compar_fn_t) (__const void *, __const void *);
9078 typedef __compar_fn_t comparison_fn_t;
9085 extern void *bsearch (__const void *__key, __const void *__base,
9086 size_t __nmemb, size_t __size, __compar_fn_t __compar)
9087 __attribute__ ((__nonnull__ (1, 2, 5))) ;
9091 extern void qsort (void *__base, size_t __nmemb, size_t __size,
9092 __compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4)));
9096 extern int abs (int __x) throw () __attribute__ ((__const__)) ;
9097 extern long int labs (long int __x) throw () __attribute__ ((__const__)) ;
9101 __extension__ extern long long int llabs (long long int __x)
9102 throw () __attribute__ ((__const__)) ;
9110 extern div_t div (int __numer, int __denom)
9111 throw () __attribute__ ((__const__)) ;
9112 extern ldiv_t ldiv (long int __numer, long int __denom)
9113 throw () __attribute__ ((__const__)) ;
9118 __extension__ extern lldiv_t lldiv (long long int __numer,
9119 long long int __denom)
9120 throw () __attribute__ ((__const__)) ;
9122 # 820 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
9123 extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
9124 int *__restrict __sign) throw () __attribute__ ((__nonnull__ (3, 4))) ;
9129 extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
9130 int *__restrict __sign) throw () __attribute__ ((__nonnull__ (3, 4))) ;
9135 extern char *gcvt (double __value, int __ndigit, char *__buf)
9136 throw () __attribute__ ((__nonnull__ (3))) ;
9141 extern char *qecvt (long double __value, int __ndigit,
9142 int *__restrict __decpt, int *__restrict __sign)
9143 throw () __attribute__ ((__nonnull__ (3, 4))) ;
9144 extern char *qfcvt (long double __value, int __ndigit,
9145 int *__restrict __decpt, int *__restrict __sign)
9146 throw () __attribute__ ((__nonnull__ (3, 4))) ;
9147 extern char *qgcvt (long double __value, int __ndigit, char *__buf)
9148 throw () __attribute__ ((__nonnull__ (3))) ;
9153 extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
9154 int *__restrict __sign, char *__restrict __buf,
9155 size_t __len) throw () __attribute__ ((__nonnull__ (3, 4, 5)));
9156 extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
9157 int *__restrict __sign, char *__restrict __buf,
9158 size_t __len) throw () __attribute__ ((__nonnull__ (3, 4, 5)));
9160 extern int qecvt_r (long double __value, int __ndigit,
9161 int *__restrict __decpt, int *__restrict __sign,
9162 char *__restrict __buf, size_t __len)
9163 throw () __attribute__ ((__nonnull__ (3, 4, 5)));
9164 extern int qfcvt_r (long double __value, int __ndigit,
9165 int *__restrict __decpt, int *__restrict __sign,
9166 char *__restrict __buf, size_t __len)
9167 throw () __attribute__ ((__nonnull__ (3, 4, 5)));
9175 extern int mblen (__const char *__s, size_t __n) throw () ;
9178 extern int mbtowc (wchar_t *__restrict __pwc,
9179 __const char *__restrict __s, size_t __n) throw () ;
9182 extern int wctomb (char *__s, wchar_t __wchar) throw () ;
9186 extern size_t mbstowcs (wchar_t *__restrict __pwcs,
9187 __const char *__restrict __s, size_t __n) throw ();
9189 extern size_t wcstombs (char *__restrict __s,
9190 __const wchar_t *__restrict __pwcs, size_t __n)
9200 extern int rpmatch (__const char *__response) throw () __attribute__ ((__nonnull__ (1))) ;
9201 # 908 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
9202 extern int getsubopt (char **__restrict __optionp,
9203 char *__const *__restrict __tokens,
9204 char **__restrict __valuep)
9205 throw () __attribute__ ((__nonnull__ (1, 2, 3))) ;
9211 extern void setkey (__const char *__key) throw () __attribute__ ((__nonnull__ (1)));
9219 extern int posix_openpt (int __oflag) ;
9227 extern int grantpt (int __fd) throw ();
9231 extern int unlockpt (int __fd) throw ();
9236 extern char *ptsname (int __fd) throw () ;
9243 extern int ptsname_r (int __fd, char *__buf, size_t __buflen)
9244 throw () __attribute__ ((__nonnull__ (2)));
9247 extern int getpt (void);
9254 extern int getloadavg (double __loadavg[], int __nelem)
9255 throw () __attribute__ ((__nonnull__ (1)));
9256 # 976 "/usr/include/gentoo-multilib/amd64/stdlib.h" 3 4
9258 # 9 "/usr/include/stdlib.h" 2 3 4
9259 # 52 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h" 2
9260 # 1 "/usr/include/string.h" 1 3 4
9261 # 53 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h" 2
9265 typedef QtValidLicenseForCoreModule QtCoreModule;
9281 static QVectorData shared_null;
9282 static QVectorData *malloc(int sizeofTypedData, int size, int sizeofT, QVectorData *init);
9283 static int grow(int sizeofTypedData, int size, int sizeofT, bool excessive);
9286 template <typename T>
9287 struct QVectorTypedData
9303 template <typename T>
9306 typedef QVectorTypedData<T> Data;
9307 union { QVectorData *p; QVectorTypedData<T> *d; };
9310 inline QVector() : p(&QVectorData::shared_null) { d->ref.ref(); }
9311 explicit QVector(int size);
9312 QVector(int size, const T &t);
9313 inline QVector(const QVector<T> &v) : d(v.d) { d->ref.ref(); if (!d->sharable) detach_helper(); }
9314 inline ~QVector() { if (!d) return; if (!d->ref.deref()) free(d); }
9315 QVector<T> &operator=(const QVector<T> &v);
9316 bool operator==(const QVector<T> &v) const;
9317 inline bool operator!=(const QVector<T> &v) const { return !(*this == v); }
9319 inline int size() const { return d->size; }
9321 inline bool isEmpty() const { return d->size == 0; }
9323 void resize(int size);
9325 inline int capacity() const { return d->alloc; }
9326 void reserve(int size);
9327 inline void squeeze() { realloc(d->size, d->size); d->capacity = 0; }
9329 inline void detach() { if (d->ref != 1) detach_helper(); }
9330 inline bool isDetached() const { return d->ref == 1; }
9331 inline void setSharable(bool sharable) { if (!sharable) detach(); d->sharable = sharable; }
9333 inline T *data() { detach(); return d->array; }
9334 inline const T *data() const { return d->array; }
9335 inline const T *constData() const { return d->array; }
9338 const T &at(int i) const;
9339 T &operator[](int i);
9340 const T &operator[](int i) const;
9341 void append(const T &t);
9342 void prepend(const T &t);
9343 void insert(int i, const T &t);
9344 void insert(int i, int n, const T &t);
9345 void replace(int i, const T &t);
9347 void remove(int i, int n);
9349 QVector<T> &fill(const T &t, int size = -1);
9351 int indexOf(const T &t, int from = 0) const;
9352 int lastIndexOf(const T &t, int from = -1) const;
9353 bool contains(const T &t) const;
9354 int count(const T &t) const;
9355 # 216 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h"
9356 typedef T* iterator;
9357 typedef const T* const_iterator;
9359 inline iterator begin() { detach(); return d->array; }
9360 inline const_iterator begin() const { return d->array; }
9361 inline const_iterator constBegin() const { return d->array; }
9362 inline iterator end() { detach(); return d->array + d->size; }
9363 inline const_iterator end() const { return d->array + d->size; }
9364 inline const_iterator constEnd() const { return d->array + d->size; }
9365 iterator insert(iterator before, int n, const T &x);
9366 inline iterator insert(iterator before, const T &x) { return insert(before, 1, x); }
9367 iterator erase(iterator begin, iterator end);
9368 inline iterator erase(iterator pos) { return erase(pos, pos+1); }
9371 inline int count() const { return d->size; }
9372 inline T& first() { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",232);} while (0); return *begin(); }
9373 inline const T &first() const { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",233);} while (0); return *begin(); }
9374 inline T& last() { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",234);} while (0); return *(end()-1); }
9375 inline const T &last() const { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",235);} while (0); return *(end()-1); }
9376 QVector<T> mid(int pos, int length = -1) const;
9378 T value(int i) const;
9379 T value(int i, const T &defaultValue) const;
9382 typedef T value_type;
9383 typedef value_type* pointer;
9384 typedef const value_type* const_pointer;
9385 typedef value_type& reference;
9386 typedef const value_type& const_reference;
9390 typedef int difference_type;
9392 typedef iterator Iterator;
9393 typedef const_iterator ConstIterator;
9394 typedef int size_type;
9395 inline void push_back(const T &t) { append(t); }
9396 inline void push_front(const T &t) { prepend(t); }
9397 void pop_back() { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",257);} while (0); erase(end()-1); }
9398 void pop_front() { do {if(!(!isEmpty()))qt_assert("!isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",258);} while (0); erase(begin()); }
9399 inline bool empty() const
9400 { return d->size == 0; }
9401 inline T& front() { return first(); }
9402 inline const_reference front() const { return first(); }
9403 inline reference back() { return last(); }
9404 inline const_reference back() const { return last(); }
9407 QVector<T> &operator+=(const QVector<T> &l);
9408 inline QVector<T> operator+(const QVector<T> &l) const
9409 { QVector n = *this; n += l; return n; }
9410 inline QVector<T> &operator+=(const T &t)
9411 { append(t); return *this; }
9412 inline QVector<T> &operator<< (const T &t)
9413 { append(t); return *this; }
9414 inline QVector<T> &operator<<(const QVector<T> &l)
9415 { *this += l; return *this; }
9417 QList<T> toList() const;
9419 static QVector<T> fromList(const QList<T> &list);
9420 # 288 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h"
9422 void detach_helper();
9423 QVectorData *malloc(int alloc);
9424 void realloc(int size, int alloc);
9428 template <typename T>
9429 void QVector<T>::detach_helper()
9430 { realloc(d->size, d->alloc); }
9431 template <typename T>
9432 void QVector<T>::reserve(int asize)
9433 { if (asize > d->alloc) realloc(d->size, asize); d->capacity = 1; }
9434 template <typename T>
9435 void QVector<T>::resize(int asize)
9436 { realloc(asize, (asize > d->alloc || (!d->capacity && asize < d->size && asize < (d->alloc >> 1))) ?
9437 QVectorData::grow(sizeof(Data), asize, sizeof(T), QTypeInfo<T>::isStatic)
9439 template <typename T>
9440 inline void QVector<T>::clear()
9441 { *this = QVector<T>(); }
9442 template <typename T>
9443 inline const T &QVector<T>::at(int i) const
9444 { do {if(!(i >= 0 && i < d->size))qt_assert_x("QVector<T>::at", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",311);} while (0);
9445 return d->array[i]; }
9446 template <typename T>
9447 inline const T &QVector<T>::operator[](int i) const
9448 { do {if(!(i >= 0 && i < d->size))qt_assert_x("QVector<T>::operator[]", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",315);} while (0);
9449 return d->array[i]; }
9450 template <typename T>
9451 inline T &QVector<T>::operator[](int i)
9452 { do {if(!(i >= 0 && i < d->size))qt_assert_x("QVector<T>::operator[]", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",319);} while (0);
9454 template <typename T>
9455 inline void QVector<T>::insert(int i, const T &t)
9456 { do {if(!(i >= 0 && i <= d->size))qt_assert_x("QVector<T>::insert", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",323);} while (0);
9457 insert(begin() + i, 1, t); }
9458 template <typename T>
9459 inline void QVector<T>::insert(int i, int n, const T &t)
9460 { do {if(!(i >= 0 && i <= d->size))qt_assert_x("QVector<T>::insert", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",327);} while (0);
9461 insert(begin() + i, n, t); }
9462 template <typename T>
9463 inline void QVector<T>::remove(int i, int n)
9464 { do {if(!(i >= 0 && n >= 0 && i + n <= d->size))qt_assert_x("QVector<T>::remove", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",331);} while (0);
9465 erase(begin() + i, begin() + i + n); }
9466 template <typename T>
9467 inline void QVector<T>::remove(int i)
9468 { do {if(!(i >= 0 && i < d->size))qt_assert_x("QVector<T>::remove", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",335);} while (0);
9469 erase(begin() + i, begin() + i + 1); }
9470 template <typename T>
9471 inline void QVector<T>::prepend(const T &t)
9472 { insert(begin(), 1, t); }
9474 template <typename T>
9475 inline void QVector<T>::replace(int i, const T &t)
9477 do {if(!(i >= 0 && i < d->size))qt_assert_x("QVector<T>::replace", "index out of range","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",344);} while (0);
9482 template <typename T>
9483 QVector<T> &QVector<T>::operator=(const QVector<T> &v)
9485 typename QVector::Data *x = v.d;
9487 x = qAtomicSetPtr(&d, x);
9488 if (!x->ref.deref())
9495 template <typename T>
9496 inline QVectorData *QVector<T>::malloc(int aalloc)
9498 return static_cast<QVectorData *>(qMalloc(sizeof(Data) + (aalloc - 1) * sizeof(T)));
9501 template <typename T>
9502 QVector<T>::QVector(int asize)
9506 d->alloc = d->size = asize;
9508 d->capacity = false;
9509 if (QTypeInfo<T>::isComplex) {
9511 T* i = d->array + d->size;
9515 qMemSet(d->array, 0, asize * sizeof(T));
9519 template <typename T>
9520 QVector<T>::QVector(int asize, const T &t)
9524 d->alloc = d->size = asize;
9526 d->capacity = false;
9527 T* i = d->array + d->size;
9528 while (i != d->array)
9532 template <typename T>
9533 void QVector<T>::free(Data *x)
9535 if (QTypeInfo<T>::isComplex) {
9544 template <typename T>
9545 void QVector<T>::realloc(int asize, int aalloc)
9548 union { QVectorData *p; Data *d; } x;
9551 if (QTypeInfo<T>::isComplex && aalloc == d->alloc && d->ref == 1) {
9553 i = d->array + d->size;
9554 j = d->array + asize;
9566 if (aalloc != d->alloc || d->ref != 1) {
9569 if (QTypeInfo<T>::isStatic) {
9570 x.p = malloc(aalloc);
9571 } else if (d->ref != 1) {
9572 x.p = QVectorData::malloc(sizeof(Data), aalloc, sizeof(T), p);
9574 if (QTypeInfo<T>::isComplex) {
9577 if (asize < d->size) {
9578 j = d->array + asize;
9579 i = d->array + d->size;
9582 i = d->array + asize;
9585 x.p = p = static_cast<QVectorData *>(qRealloc(p, sizeof(Data) + (aalloc - 1) * sizeof(T)));
9588 x.d->sharable = true;
9589 x.d->capacity = d->capacity;
9592 if (QTypeInfo<T>::isComplex) {
9593 if (asize < d->size) {
9594 j = d->array + asize;
9595 i = x.d->array + asize;
9598 i = x.d->array + asize;
9599 j = x.d->array + d->size;
9602 j = d->array + d->size;
9610 } else if (asize > d->size) {
9612 qMemSet(x.d->array + d->size, 0, (asize - d->size) * sizeof(T));
9615 x.d->alloc = aalloc;
9617 x.d = qAtomicSetPtr(&d, x.d);
9618 if (!x.d->ref.deref())
9623 template<typename T>
9624 T QVector<T>::value(int i) const
9626 if (i < 0 || i >= p->size) {
9631 template<typename T>
9632 T QVector<T>::value(int i, const T &defaultValue) const
9634 return ((i < 0 || i >= p->size) ? defaultValue : d->array[i]);
9637 template <typename T>
9638 void QVector<T>::append(const T &t)
9640 if (d->ref != 1 || d->size + 1 > d->alloc) {
9642 realloc(d->size, QVectorData::grow(sizeof(Data), d->size + 1, sizeof(T),
9643 QTypeInfo<T>::isStatic));
9644 if (QTypeInfo<T>::isComplex)
9645 new (d->array + d->size) T(copy);
9647 d->array[d->size] = copy;
9649 if (QTypeInfo<T>::isComplex)
9650 new (d->array + d->size) T(t);
9652 d->array[d->size] = t;
9657 template <typename T>
9658 typename QVector<T>::iterator QVector<T>::insert(iterator before, size_type n, const T &t)
9660 int offset = before - d->array;
9663 if (d->ref != 1 || d->size + n > d->alloc)
9664 realloc(d->size, QVectorData::grow(sizeof(Data), d->size + n, sizeof(T),
9665 QTypeInfo<T>::isStatic));
9666 if (QTypeInfo<T>::isStatic) {
9667 T *b = d->array + d->size;
9668 T *i = d->array + d->size + n;
9671 i = d->array + d->size;
9673 b = d->array + offset;
9680 T *b = d->array + offset;
9682 memmove(i, b, (d->size - offset) * sizeof(T));
9688 return d->array + offset;
9691 template <typename T>
9692 typename QVector<T>::iterator QVector<T>::erase(iterator abegin, iterator aend)
9694 int f = abegin - d->array;
9695 int l = aend - d->array;
9698 if (QTypeInfo<T>::isComplex) {
9699 qCopy(d->array+l, d->array+d->size, d->array+f);
9700 T *i = d->array+d->size;
9701 T* b = d->array+d->size-n;
9707 memmove(d->array + f, d->array + l, (d->size-l)*sizeof(T));
9710 return d->array + f;
9713 template <typename T>
9714 bool QVector<T>::operator==(const QVector<T> &v) const
9716 if (d->size != v.d->size)
9722 T* j = v.d->array + d->size;
9724 if (!(*--i == *--j))
9729 template <typename T>
9730 QVector<T> &QVector<T>::fill(const T &from, int asize)
9733 resize(asize < 0 ? d->size : asize);
9735 T *i = d->array + d->size;
9743 template <typename T>
9744 QVector<T> &QVector<T>::operator+=(const QVector &l)
9746 int newSize = d->size + l.d->size;
9747 realloc(d->size, newSize);
9749 T *w = d->array + newSize;
9750 T *i = l.d->array + l.d->size;
9753 if (QTypeInfo<T>::isComplex)
9762 template <typename T>
9763 int QVector<T>::indexOf(const T &t, int from) const
9766 from = qMax(from + d->size, 0);
9767 if (from < d->size) {
9768 T* n = d->array + from - 1;
9769 T* e = d->array + d->size;
9772 return n - d->array;
9777 template <typename T>
9778 int QVector<T>::lastIndexOf(const T &t, int from) const
9782 else if (from >= d->size)
9786 T* n = d->array + from + 1;
9795 template <typename T>
9796 bool QVector<T>::contains(const T &t) const
9799 T* i = d->array + d->size;
9806 template <typename T>
9807 int QVector<T>::count(const T &t) const
9811 T* i = d->array + d->size;
9818 template <typename T>
9819 QVector<T> QVector<T>::mid(int pos, int length) const
9822 length = size() - pos;
9823 if (pos == 0 && length == size())
9826 if (pos + length > size())
9827 length = size() - pos;
9828 for (int i = pos; i < pos + length; ++i)
9833 template <typename T>
9834 QList<T> QVector<T>::toList() const
9837 for (int i = 0; i < size(); ++i)
9838 result.append(at(i));
9842 template <typename T>
9843 QVector<T> QList<T>::toVector() const
9845 QVector<T> result(size());
9846 for (int i = 0; i < size(); ++i)
9851 template <typename T>
9852 QVector<T> QVector<T>::fromList(const QList<T> &list)
9854 return list.toVector();
9857 template <typename T>
9858 QList<T> QList<T>::fromVector(const QVector<T> &vector)
9860 return vector.toList();
9863 template <class T> class QVectorIterator { typedef typename QVector<T>::const_iterator const_iterator; QVector<T> c; const_iterator i; public: inline QVectorIterator(const QVector<T> &container) : c(container), i(c.constBegin()) {} inline QVectorIterator &operator=(const QVector<T> &container) { c = container; i = c.constBegin(); return *this; } inline void toFront() { i = c.constBegin(); } inline void toBack() { i = c.constEnd(); } inline bool hasNext() const { return i != c.constEnd(); } inline const T &next() { return *i++; } inline const T &peekNext() const { return *i; } inline bool hasPrevious() const { return i != c.constBegin(); } inline const T &previous() { return *--i; } inline const T &peekPrevious() const { const_iterator p = i; return *--p; } inline bool findNext(const T &t) { while (i != c.constEnd()) if (*i++ == t) return true; return false; } inline bool findPrevious(const T &t) { while (i != c.constBegin()) if (*(--i) == t) return true; return false; } };
9864 template <class T> class QMutableVectorIterator { typedef typename QVector<T>::iterator iterator; typedef typename QVector<T>::const_iterator const_iterator; QVector<T> *c; iterator i, n; inline bool item_exists() const { return const_iterator(n) != c->constEnd(); } public: inline QMutableVectorIterator(QVector<T> &container) : c(&container) { c->setSharable(false); i = c->begin(); n = c->end(); } inline ~QMutableVectorIterator() { c->setSharable(true); } inline QMutableVectorIterator &operator=(QVector<T> &container) { c->setSharable(true); c = &container; c->setSharable(false); i = c->begin(); n = c->end(); return *this; } inline void toFront() { i = c->begin(); n = c->end(); } inline void toBack() { i = c->end(); n = i; } inline bool hasNext() const { return c->constEnd() != const_iterator(i); } inline T &next() { n = i++; return *n; } inline T &peekNext() const { return *i; } inline bool hasPrevious() const { return c->constBegin() != const_iterator(i); } inline T &previous() { n = --i; return *n; } inline T &peekPrevious() const { iterator p = i; return *--p; } inline void remove() { if (c->constEnd() != const_iterator(n)) { i = c->erase(n); n = c->end(); } } inline void setValue(const T &t) const { if (c->constEnd() != const_iterator(n)) *n = t; } inline T &value() { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",731);} while (0); return *n; } inline const T &value() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h",731);} while (0); return *n; } inline void insert(const T &t) { n = i = c->insert(i, t); ++i; } inline bool findNext(const T &t) { while (c->constEnd() != const_iterator(n = i)) if (*i++ == t) return true; return false; } inline bool findPrevious(const T &t) { while (c->constBegin() != const_iterator(i)) if (*(n = --i) == t) return true; n = c->end(); return false; } };
9865 # 754 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qvector.h"
9867 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qvector.h" 2
9868 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstack.h" 2
9872 typedef QtValidLicenseForCoreModule QtCoreModule;
9875 class QStack : public QVector<T>
9880 inline void push(const T &t) { QVector<T>::append(t); }
9883 const T &top() const;
9887 inline T QStack<T>::pop()
9888 { do {if(!(!this->isEmpty()))qt_assert("!this->isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstack.h",62);} while (0); T t = this->data()[this->size() -1];
9889 this->resize(this->size()-1); return t; }
9892 inline T &QStack<T>::top()
9893 { do {if(!(!this->isEmpty()))qt_assert("!this->isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstack.h",67);} while (0); this->detach(); return this->data()[this->size()-1]; }
9896 inline const T &QStack<T>::top() const
9897 { do {if(!(!this->isEmpty()))qt_assert("!this->isEmpty()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qstack.h",71);} while (0); return this->data()[this->size()-1]; }
9900 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstack.h" 2
9901 # 46 "./project.h" 2
9902 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qmap.h" 1
9903 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h" 1
9904 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h"
9905 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic.h" 1
9906 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h" 2
9907 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qiterator.h" 1
9908 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h" 2
9909 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qlist.h" 1
9910 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h" 2
9911 # 53 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h"
9914 typedef QtValidLicenseForCoreModule QtCoreModule;
9922 enum { LastLevel = 11, Sparseness = 3 };
9925 QMapData *forward[QMapData::LastLevel + 1];
9930 uint insertInOrder : 1;
9933 static QMapData *createData();
9934 void continueFreeData(int offset);
9935 Node *node_create(Node *update[], int offset);
9936 void node_delete(Node *update[], int offset, Node *node);
9942 static QMapData shared_null;
9944 # 97 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h"
9945 template <class Key> inline bool qMapLessThanKey(const Key &key1, const Key &key2)
9951 template <class Ptr> inline bool qMapLessThanKey(Ptr *key1, Ptr *key2)
9953 do {if(!(sizeof(ulong) == sizeof(Ptr *)))qt_assert("sizeof(ulong) == sizeof(Ptr *)","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h",105);} while (0);
9954 return reinterpret_cast<ulong>(key1) < reinterpret_cast<ulong>(key2);
9957 template <class Ptr> inline bool qMapLessThanKey(const Ptr *key1, const Ptr *key2)
9959 do {if(!(sizeof(ulong) == sizeof(const Ptr *)))qt_assert("sizeof(ulong) == sizeof(const Ptr *)","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h",111);} while (0);
9960 return reinterpret_cast<ulong>(key1) < reinterpret_cast<ulong>(key2);
9964 template <class Key, class T>
9970 QMapData::Node *backward;
9971 QMapData::Node *forward[1];
9982 QMapData::Node *backward;
9985 static inline int payload() { return sizeof(PayloadNode) - sizeof(QMapData::Node *); }
9986 static inline Node *concrete(QMapData::Node *node) {
9987 return reinterpret_cast<Node *>(reinterpret_cast<char *>(node) - payload());
9991 inline QMap() : d(&QMapData::shared_null) { d->ref.ref(); }
9992 inline QMap(const QMap<Key, T> &other) : d(other.d)
9993 { d->ref.ref(); if (!d->sharable) detach(); }
9994 inline ~QMap() { if (!d) return; if (!d->ref.deref()) freeData(d); }
9996 QMap<Key, T> &operator=(const QMap<Key, T> &other);
10002 bool operator==(const QMap<Key, T> &other) const;
10003 inline bool operator!=(const QMap<Key, T> &other) const { return !(*this == other); }
10005 inline int size() const { return d->size; }
10007 inline bool isEmpty() const { return d->size == 0; }
10009 inline void detach() { if (d->ref != 1) detach_helper(); }
10010 inline bool isDetached() const { return d->ref == 1; }
10011 inline void setSharable(bool sharable) { if (!sharable) detach(); d->sharable = sharable; }
10012 inline void setInsertInOrder(bool ordered) { d->insertInOrder = ordered; }
10016 int remove(const Key &key);
10017 T take(const Key &key);
10019 bool contains(const Key &key) const;
10020 const Key key(const T &value) const;
10021 const Key key(const T &value, const Key &defaultKey) const;
10022 const T value(const Key &key) const;
10023 const T value(const Key &key, const T &defaultValue) const;
10024 T &operator[](const Key &key);
10025 const T operator[](const Key &key) const;
10027 QList<Key> uniqueKeys() const;
10028 QList<Key> keys() const;
10029 QList<Key> keys(const T &value) const;
10030 QList<T> values() const;
10031 QList<T> values(const Key &key) const;
10032 int count(const Key &key) const;
10034 class const_iterator;
10041 typedef std::bidirectional_iterator_tag iterator_category;
10042 typedef ptrdiff_t difference_type;
10043 typedef T value_type;
10044 typedef T *pointer;
10045 typedef T &reference;
10048 inline operator QMapData::Node *() const { return i; }
10049 inline iterator() : i(0) { }
10050 inline iterator(QMapData::Node *node) : i(node) { }
10052 inline const Key &key() const { return concrete(i)->key; }
10053 inline T &value() const { return concrete(i)->value; }
10057 inline T &operator*() const { return concrete(i)->value; }
10058 inline T *operator->() const { return &concrete(i)->value; }
10059 inline bool operator==(const iterator &o) const { return i == o.i; }
10060 inline bool operator!=(const iterator &o) const { return i != o.i; }
10062 inline iterator &operator++() {
10066 inline iterator operator++(int) {
10067 iterator r = *this;
10071 inline iterator &operator--() {
10075 inline iterator operator--(int) {
10076 iterator r = *this;
10080 inline iterator operator+(int j) const
10081 { iterator r = *this; if (j > 0) while (j--) ++r; else while (j++) --r; return r; }
10082 inline iterator operator-(int j) const { return operator+(-j); }
10083 inline iterator &operator+=(int j) { return *this = *this + j; }
10084 inline iterator &operator-=(int j) { return *this = *this - j; }
10092 inline bool operator==(const const_iterator &o) const
10093 { return i == reinterpret_cast<const iterator &>(o).i; }
10094 inline bool operator!=(const const_iterator &o) const
10095 { return i != reinterpret_cast<const iterator &>(o).i; }
10099 inline operator bool() const { return false; }
10101 friend class iterator;
10103 class const_iterator
10108 typedef std::bidirectional_iterator_tag iterator_category;
10109 typedef ptrdiff_t difference_type;
10110 typedef T value_type;
10111 typedef const T *pointer;
10112 typedef const T &reference;
10115 inline operator QMapData::Node *() const { return i; }
10116 inline const_iterator() : i(0) { }
10117 inline const_iterator(QMapData::Node *node) : i(node) { }
10121 inline const_iterator(const iterator &o)
10123 { i = reinterpret_cast<const const_iterator &>(o).i; }
10125 inline const Key &key() const { return concrete(i)->key; }
10126 inline const T &value() const { return concrete(i)->value; }
10130 inline const T &operator*() const { return concrete(i)->value; }
10131 inline const T *operator->() const { return &concrete(i)->value; }
10132 inline bool operator==(const const_iterator &o) const { return i == o.i; }
10133 inline bool operator!=(const const_iterator &o) const { return i != o.i; }
10135 inline const_iterator &operator++() {
10139 inline const_iterator operator++(int) {
10140 const_iterator r = *this;
10144 inline const_iterator &operator--() {
10148 inline const_iterator operator--(int) {
10149 const_iterator r = *this;
10153 inline const_iterator operator+(int j) const
10154 { const_iterator r = *this; if (j > 0) while (j--) ++r; else while (j++) --r; return r; }
10155 inline const_iterator operator-(int j) const { return operator+(-j); }
10156 inline const_iterator &operator+=(int j) { return *this = *this + j; }
10157 inline const_iterator &operator-=(int j) { return *this = *this - j; }
10158 # 318 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h"
10161 inline operator bool() const { return false; }
10163 friend class const_iterator;
10166 inline iterator begin() { detach(); return iterator(e->forward[0]); }
10167 inline const_iterator begin() const { return const_iterator(e->forward[0]); }
10168 inline const_iterator constBegin() const { return const_iterator(e->forward[0]); }
10169 inline iterator end() {
10171 return iterator(e);
10173 inline const_iterator end() const { return const_iterator(e); }
10174 inline const_iterator constEnd() const { return const_iterator(e); }
10175 iterator erase(iterator it);
10182 typedef iterator Iterator;
10183 typedef const_iterator ConstIterator;
10184 inline int count() const { return d->size; }
10185 iterator find(const Key &key);
10186 const_iterator find(const Key &key) const;
10187 const_iterator constFind(const Key &key) const;
10188 iterator lowerBound(const Key &key);
10189 const_iterator lowerBound(const Key &key) const;
10190 iterator upperBound(const Key &key);
10191 const_iterator upperBound(const Key &key) const;
10192 iterator insert(const Key &key, const T &value);
10196 iterator insertMulti(const Key &key, const T &value);
10200 QMap<Key, T> &unite(const QMap<Key, T> &other);
10203 typedef Key key_type;
10204 typedef T mapped_type;
10205 typedef ptrdiff_t difference_type;
10206 typedef int size_type;
10207 inline bool empty() const { return isEmpty(); }
10214 void detach_helper();
10215 void freeData(QMapData *d);
10216 QMapData::Node *findNode(const Key &key) const;
10217 QMapData::Node *mutableFindNode(QMapData::Node *update[], const Key &key) const;
10218 QMapData::Node *node_create(QMapData *d, QMapData::Node *update[], const Key &key,
10222 template <class Key, class T>
10223 inline QMap<Key, T> &QMap<Key, T>::operator=(const QMap<Key, T> &other)
10225 if (d != other.d) {
10226 QMapData *x = other.d;
10228 x = qAtomicSetPtr(&d, x);
10229 if (!x->ref.deref())
10237 template <class Key, class T>
10238 inline void QMap<Key, T>::clear()
10240 *this = QMap<Key, T>();
10243 template <class Key, class T>
10244 inline typename QMapData::Node *
10245 QMap<Key, T>::node_create(QMapData *adt, QMapData::Node *aupdate[], const Key &akey, const T &avalue)
10247 QMapData::Node *abstractNode = adt->node_create(aupdate, payload());
10248 Node *concreteNode = concrete(abstractNode);
10249 new (&concreteNode->key) Key(akey);
10250 new (&concreteNode->value) T(avalue);
10251 return abstractNode;
10254 template <class Key, class T>
10255 inline QMapData::Node *QMap<Key, T>::findNode(const Key &akey) const
10257 QMapData::Node *cur = e;
10258 QMapData::Node *next = e;
10260 for (int i = d->topLevel; i >= 0; i--) {
10261 while ((next = cur->forward[i]) != e && qMapLessThanKey<Key>(concrete(next)->key, akey))
10265 if (next != e && !qMapLessThanKey<Key>(akey, concrete(next)->key)) {
10272 template <class Key, class T>
10273 inline const T QMap<Key, T>::value(const Key &akey) const
10275 QMapData::Node *node;
10276 if (d->size == 0 || (node = findNode(akey)) == e) {
10279 return concrete(node)->value;
10283 template <class Key, class T>
10284 inline const T QMap<Key, T>::value(const Key &akey, const T &adefaultValue) const
10286 QMapData::Node *node;
10287 if (d->size == 0 || (node = findNode(akey)) == e) {
10288 return adefaultValue;
10290 return concrete(node)->value;
10294 template <class Key, class T>
10295 inline const T QMap<Key, T>::operator[](const Key &akey) const
10297 return value(akey);
10300 template <class Key, class T>
10301 inline T &QMap<Key, T>::operator[](const Key &akey)
10305 QMapData::Node *update[QMapData::LastLevel + 1];
10306 QMapData::Node *node = mutableFindNode(update, akey);
10308 node = node_create(d, update, akey, T());
10309 return concrete(node)->value;
10312 template <class Key, class T>
10313 inline int QMap<Key, T>::count(const Key &akey) const
10316 QMapData::Node *node = findNode(akey);
10320 node = node->forward[0];
10321 } while (node != e && !qMapLessThanKey<Key>(akey, concrete(node)->key));
10326 template <class Key, class T>
10327 inline bool QMap<Key, T>::contains(const Key &akey) const
10329 return findNode(akey) != e;
10332 template <class Key, class T>
10333 inline typename QMap<Key, T>::iterator QMap<Key, T>::insert(const Key &akey,
10338 QMapData::Node *update[QMapData::LastLevel + 1];
10339 QMapData::Node *node = mutableFindNode(update, akey);
10341 node = node_create(d, update, akey, avalue);
10343 concrete(node)->value = avalue;
10345 return iterator(node);
10347 # 527 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h"
10348 template <class Key, class T>
10349 inline typename QMap<Key, T>::iterator QMap<Key, T>::insertMulti(const Key &akey,
10354 QMapData::Node *update[QMapData::LastLevel + 1];
10355 mutableFindNode(update, akey);
10356 return iterator(node_create(d, update, akey, avalue));
10359 template <class Key, class T>
10360 inline typename QMap<Key, T>::const_iterator QMap<Key, T>::find(const Key &akey) const
10362 return const_iterator(findNode(akey));
10365 template <class Key, class T>
10366 inline typename QMap<Key, T>::const_iterator QMap<Key, T>::constFind(const Key &akey) const
10368 return const_iterator(findNode(akey));
10371 template <class Key, class T>
10372 inline typename QMap<Key, T>::iterator QMap<Key, T>::find(const Key &akey)
10375 return iterator(findNode(akey));
10378 template <class Key, class T>
10379 inline QMap<Key, T> &QMap<Key, T>::unite(const QMap<Key, T> &other)
10381 QMap<Key, T> copy(other);
10382 const_iterator it = copy.constEnd();
10383 const const_iterator b = copy.constBegin();
10386 insertMulti(it.key(), it.value());
10391 template <class Key, class T>
10392 void QMap<Key, T>::freeData(QMapData *x)
10394 if (QTypeInfo<Key>::isComplex || QTypeInfo<T>::isComplex) {
10395 QMapData::Node *y = reinterpret_cast<QMapData::Node *>(x);
10396 QMapData::Node *cur = y;
10397 QMapData::Node *next = cur->forward[0];
10398 while (next != y) {
10400 next = cur->forward[0];
10404 Node *concreteNode = concrete(cur);
10405 concreteNode->key.~Key();
10406 concreteNode->value.~T();
10412 x->continueFreeData(payload());
10415 template <class Key, class T>
10416 int QMap<Key, T>::remove(const Key &akey)
10420 QMapData::Node *update[QMapData::LastLevel + 1];
10421 QMapData::Node *cur = e;
10422 QMapData::Node *next = e;
10423 int oldSize = d->size;
10425 for (int i = d->topLevel; i >= 0; i--) {
10426 while ((next = cur->forward[i]) != e && qMapLessThanKey<Key>(concrete(next)->key, akey))
10431 if (next != e && !qMapLessThanKey<Key>(akey, concrete(next)->key)) {
10432 bool deleteNext = true;
10435 next = cur->forward[0];
10436 deleteNext = (next != e && !qMapLessThanKey<Key>(concrete(cur)->key, concrete(next)->key));
10437 concrete(cur)->key.~Key();
10438 concrete(cur)->value.~T();
10439 d->node_delete(update, payload(), cur);
10440 } while (deleteNext);
10442 return oldSize - d->size;
10445 template <class Key, class T>
10446 T QMap<Key, T>::take(const Key &akey)
10450 QMapData::Node *update[QMapData::LastLevel + 1];
10451 QMapData::Node *cur = e;
10452 QMapData::Node *next = e;
10454 for (int i = d->topLevel; i >= 0; i--) {
10455 while ((next = cur->forward[i]) != e && qMapLessThanKey<Key>(concrete(next)->key, akey))
10460 if (next != e && !qMapLessThanKey<Key>(akey, concrete(next)->key)) {
10461 T t = concrete(next)->value;
10462 concrete(next)->key.~Key();
10463 concrete(next)->value.~T();
10464 d->node_delete(update, payload(), next);
10470 template <class Key, class T>
10471 typename QMap<Key, T>::iterator QMap<Key, T>::erase(iterator it)
10473 QMapData::Node *update[QMapData::LastLevel + 1];
10474 QMapData::Node *cur = e;
10475 QMapData::Node *next = e;
10477 if (it == iterator(e))
10480 for (int i = d->topLevel; i >= 0; i--) {
10481 while ((next = cur->forward[i]) != e && qMapLessThanKey<Key>(concrete(next)->key, it.key()))
10486 while (next != e) {
10488 next = cur->forward[0];
10490 concrete(cur)->key.~Key();
10491 concrete(cur)->value.~T();
10492 d->node_delete(update, payload(), cur);
10493 return iterator(next);
10496 for (int i = 0; i <= d->topLevel; ++i) {
10497 if (update[i]->forward[i] != cur)
10505 template <class Key, class T>
10506 void QMap<Key, T>::detach_helper()
10508 union { QMapData *d; QMapData::Node *e; } x;
10509 x.d = QMapData::createData();
10511 x.d->insertInOrder = true;
10512 QMapData::Node *update[QMapData::LastLevel + 1];
10513 QMapData::Node *cur = e->forward[0];
10516 Node *concreteNode = concrete(cur);
10517 node_create(x.d, update, concreteNode->key, concreteNode->value);
10518 cur = cur->forward[0];
10520 x.d->insertInOrder = false;
10522 x.d = qAtomicSetPtr(&d, x.d);
10523 if (!x.d->ref.deref())
10527 template <class Key, class T>
10528 QMapData::Node *QMap<Key, T>::mutableFindNode(QMapData::Node *aupdate[],
10529 const Key &akey) const
10531 QMapData::Node *cur = e;
10532 QMapData::Node *next = e;
10534 for (int i = d->topLevel; i >= 0; i--) {
10535 while ((next = cur->forward[i]) != e && qMapLessThanKey<Key>(concrete(next)->key, akey))
10539 if (next != e && !qMapLessThanKey<Key>(akey, concrete(next)->key)) {
10546 template <class Key, class T>
10547 QList<Key> QMap<Key, T>::uniqueKeys() const
10550 const_iterator i = begin();
10553 const Key &aKey = i.key();
10557 goto break_out_of_outer_loop;
10558 } while (!(aKey < i.key()));
10561 break_out_of_outer_loop:
10565 template <class Key, class T>
10566 QList<Key> QMap<Key, T>::keys() const
10569 const_iterator i = begin();
10570 while (i != end()) {
10571 res.append(i.key());
10577 template <class Key, class T>
10578 QList<Key> QMap<Key, T>::keys(const T &avalue) const
10581 const_iterator i = begin();
10582 while (i != end()) {
10583 if (i.value() == avalue)
10584 res.append(i.key());
10590 template <class Key, class T>
10591 const Key QMap<Key, T>::key(const T &avalue) const
10593 return key(avalue, Key());
10596 template <class Key, class T>
10597 const Key QMap<Key, T>::key(const T &avalue, const Key &defaultKey) const
10599 const_iterator i = begin();
10600 while (i != end()) {
10601 if (i.value() == avalue)
10609 template <class Key, class T>
10610 QList<T> QMap<Key, T>::values() const
10613 const_iterator i = begin();
10614 while (i != end()) {
10615 res.append(i.value());
10621 template <class Key, class T>
10622 QList<T> QMap<Key, T>::values(const Key &akey) const
10625 QMapData::Node *node = findNode(akey);
10628 res.append(concrete(node)->value);
10629 node = node->forward[0];
10630 } while (node != e && !qMapLessThanKey<Key>(akey, concrete(node)->key));
10635 template <class Key, class T>
10636 inline typename QMap<Key, T>::const_iterator
10637 QMap<Key, T>::lowerBound(const Key &akey) const
10639 QMapData::Node *update[QMapData::LastLevel + 1];
10640 mutableFindNode(update, akey);
10641 return const_iterator(update[0]->forward[0]);
10644 template <class Key, class T>
10645 inline typename QMap<Key, T>::iterator QMap<Key, T>::lowerBound(const Key &akey)
10648 return static_cast<QMapData::Node *>(const_cast<const QMap *>(this)->lowerBound(akey));
10651 template <class Key, class T>
10652 inline typename QMap<Key, T>::const_iterator
10653 QMap<Key, T>::upperBound(const Key &akey) const
10655 QMapData::Node *update[QMapData::LastLevel + 1];
10656 mutableFindNode(update, akey);
10657 QMapData::Node *node = update[0]->forward[0];
10658 while (node != e && !qMapLessThanKey<Key>(akey, concrete(node)->key))
10659 node = node->forward[0];
10660 return const_iterator(node);
10663 template <class Key, class T>
10664 inline typename QMap<Key, T>::iterator QMap<Key, T>::upperBound(const Key &akey)
10667 return static_cast<QMapData::Node *>(const_cast<const QMap *>(this)->upperBound(akey));
10670 template <class Key, class T>
10671 bool QMap<Key, T>::operator==(const QMap<Key, T> &other) const
10673 if (size() != other.size())
10678 const_iterator it1 = begin();
10679 const_iterator it2 = other.begin();
10681 while (it1 != end()) {
10682 if (!(it1.value() == it2.value()) || qMapLessThanKey(it1.key(), it2.key()) || qMapLessThanKey(it2.key(), it1.key()))
10689 # 897 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h"
10690 template <class Key, class T>
10691 class QMultiMap : public QMap<Key, T>
10695 QMultiMap(const QMap<Key, T> &other) : QMap<Key, T>(other) {}
10697 inline typename QMap<Key, T>::iterator replace(const Key &key, const T &value)
10698 { return QMap<Key, T>::insert(key, value); }
10699 inline typename QMap<Key, T>::iterator insert(const Key &key, const T &value)
10700 { return QMap<Key, T>::insertMulti(key, value); }
10702 inline QMultiMap &operator+=(const QMultiMap &other)
10703 { unite(other); return *this; }
10704 inline QMultiMap operator+(const QMultiMap &other) const
10705 { QMultiMap result = *this; result += other; return result; }
10708 using QMap<Key, T>::contains;
10709 using QMap<Key, T>::remove;
10710 using QMap<Key, T>::count;
10711 using QMap<Key, T>::find;
10712 using QMap<Key, T>::constFind;
10713 # 937 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h"
10714 bool contains(const Key &key, const T &value) const;
10716 int remove(const Key &key, const T &value);
10718 int count(const Key &key, const T &value) const;
10720 typename QMap<Key, T>::iterator find(const Key &key, const T &value) {
10721 typename QMap<Key, T>::iterator i(find(key));
10722 typename QMap<Key, T>::iterator end(this->end());
10723 while (i != end && !qMapLessThanKey<Key>(key, i.key())) {
10724 if (i.value() == value)
10730 typename QMap<Key, T>::const_iterator find(const Key &key, const T &value) const {
10731 typename QMap<Key, T>::const_iterator i(constFind(key));
10732 typename QMap<Key, T>::const_iterator end(QMap<Key, T>::constEnd());
10733 while (i != end && !qMapLessThanKey<Key>(key, i.key())) {
10734 if (i.value() == value)
10740 typename QMap<Key, T>::const_iterator constFind(const Key &key, const T &value) const
10741 { return find(key, value); }
10743 T &operator[](const Key &key);
10744 const T operator[](const Key &key) const;
10747 template <class Key, class T>
10748 inline bool QMultiMap<Key, T>::contains(const Key &key, const T &value) const
10750 return constFind(key, value) != QMap<Key, T>::constEnd();
10753 template <class Key, class T>
10754 inline int QMultiMap<Key, T>::remove(const Key &key, const T &value)
10757 typename QMap<Key, T>::iterator i(find(key));
10758 typename QMap<Key, T>::const_iterator end(QMap<Key, T>::constEnd());
10759 while (i != end && !qMapLessThanKey<Key>(key, i.key())) {
10760 if (i.value() == value) {
10770 template <class Key, class T>
10771 inline int QMultiMap<Key, T>::count(const Key &key, const T &value) const
10774 typename QMap<Key, T>::const_iterator i(constFind(key));
10775 typename QMap<Key, T>::const_iterator end(QMap<Key, T>::constEnd());
10776 while (i != end && !qMapLessThanKey<Key>(key, i.key())) {
10777 if (i.value() == value)
10784 template <class Key, class T> class QMapIterator { typedef typename QMap<Key,T>::const_iterator const_iterator; typedef const_iterator Item; QMap<Key,T> c; const_iterator i, n; inline bool item_exists() const { return n != c.constEnd(); } public: inline QMapIterator(const QMap<Key,T> &container) : c(container), i(c.constBegin()), n(c.constEnd()) {} inline QMapIterator &operator=(const QMap<Key,T> &container) { c = container; i = c.constBegin(); n = c.constEnd(); return *this; } inline void toFront() { i = c.constBegin(); n = c.constEnd(); } inline void toBack() { i = c.constEnd(); n = c.constEnd(); } inline bool hasNext() const { return i != c.constEnd(); } inline Item next() { n = i++; return n; } inline Item peekNext() const { return i; } inline bool hasPrevious() const { return i != c.constBegin(); } inline Item previous() { n = --i; return n; } inline Item peekPrevious() const { const_iterator p = i; return --p; } inline const T &value() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h",1007);} while (0); return *n; } inline const Key &key() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h",1007);} while (0); return n.key(); } inline bool findNext(const T &t) { while ((n = i) != c.constEnd()) if (*i++ == t) return true; return false; } inline bool findPrevious(const T &t) { while (i != c.constBegin()) if (*(n = --i) == t) return true; n = c.constEnd(); return false; } };
10785 template <class Key, class T> class QMutableMapIterator { typedef typename QMap<Key,T>::iterator iterator; typedef typename QMap<Key,T>::const_iterator const_iterator; typedef iterator Item; QMap<Key,T> *c; iterator i, n; inline bool item_exists() const { return const_iterator(n) != c->constEnd(); } public: inline QMutableMapIterator(QMap<Key,T> &container) : c(&container) { c->setSharable(false); i = c->begin(); n = c->end(); } inline ~QMutableMapIterator() { c->setSharable(true); } inline QMutableMapIterator &operator=(QMap<Key,T> &container) { c->setSharable(true); c = &container; c->setSharable(false); i = c->begin(); n = c->end(); return *this; } inline void toFront() { i = c->begin(); n = c->end(); } inline void toBack() { i = c->end(); n = c->end(); } inline bool hasNext() const { return const_iterator(i) != c->constEnd(); } inline Item next() { n = i++; return n; } inline Item peekNext() const { return i; } inline bool hasPrevious() const { return const_iterator(i) != c->constBegin(); } inline Item previous() { n = --i; return n; } inline Item peekPrevious() const { iterator p = i; return --p; } inline void remove() { if (const_iterator(n) != c->constEnd()) { i = c->erase(n); n = c->end(); } } inline void setValue(const T &t) { if (const_iterator(n) != c->constEnd()) *n = t; } inline T &value() { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h",1008);} while (0); return *n; } inline const T &value() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h",1008);} while (0); return *n; } inline const Key &key() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qmap.h",1008);} while (0); return n.key(); } inline bool findNext(const T &t) { while (const_iterator(n = i) != c->constEnd()) if (*i++ == t) return true; return false; } inline bool findPrevious(const T &t) { while (const_iterator(i) != c->constBegin()) if (*(n = --i) == t) return true; n = c->end(); return false; } };
10788 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qmap.h" 2
10789 # 47 "./project.h" 2
10790 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qmetatype.h" 1
10791 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qmetatype.h" 1
10792 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qmetatype.h"
10793 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qglobal.h" 1
10794 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qmetatype.h" 2
10795 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic.h" 1
10796 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qmetatype.h" 2
10799 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qdatastream.h" 1
10800 # 47 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qmetatype.h" 2
10809 typedef QtValidLicenseForCoreModule QtCoreModule;
10815 Void = 0, Bool = 1, Int = 2, UInt = 3, LongLong = 4, ULongLong = 5,
10816 Double = 6, QChar = 7, QVariantMap = 8, QVariantList = 9,
10817 QString = 10, QStringList = 11, QByteArray = 12,
10818 QBitArray = 13, QDate = 14, QTime = 15, QDateTime = 16, QUrl = 17,
10819 QLocale = 18, QRect = 19, QRectF = 20, QSize = 21, QSizeF = 22,
10820 QLine = 23, QLineF = 24, QPoint = 25, QPointF = 26, QRegExp = 27,
10821 LastCoreType = 27 ,
10823 FirstGuiType = 63 ,
10827 QFont = 64, QPixmap = 65, QBrush = 66, QColor = 67, QPalette = 68,
10828 QIcon = 69, QImage = 70, QPolygon = 71, QRegion = 72, QBitmap = 73,
10829 QCursor = 74, QSizePolicy = 75, QKeySequence = 76, QPen = 77,
10830 QTextLength = 78, QTextFormat = 79, QMatrix = 80, QTransform = 81,
10833 FirstCoreExtType = 128 ,
10834 VoidStar = 128, Long = 129, Short = 130, Char = 131, ULong = 132,
10835 UShort = 133, UChar = 134, Float = 135, QObjectStar = 136, QWidgetStar = 137,
10836 LastCoreExtType = 137 ,
10841 typedef void (*Destructor)(void *);
10842 typedef void *(*Constructor)(const void *);
10845 typedef void (*SaveOperator)(QDataStream &, const void *);
10846 typedef void (*LoadOperator)(QDataStream &, void *);
10847 static void registerStreamOperators(const char *typeName, SaveOperator saveOp,
10848 LoadOperator loadOp);
10850 static int registerType(const char *typeName, Destructor destructor,
10851 Constructor constructor);
10852 static int type(const char *typeName);
10853 static const char *typeName(int type);
10854 static bool isRegistered(int type);
10855 static void *construct(int type, const void *copy = 0);
10856 static void destroy(int type, void *data);
10859 static bool save(QDataStream &stream, int type, const void *data);
10860 static bool load(QDataStream &stream, int type, void *data);
10864 template <typename T>
10865 void qMetaTypeDeleteHelper(T *t)
10870 template <typename T>
10871 void *qMetaTypeConstructHelper(const T *t)
10875 return new T(*static_cast<const T*>(t));
10879 template <typename T>
10880 void qMetaTypeSaveHelper(QDataStream &stream, const T *t)
10885 template <typename T>
10886 void qMetaTypeLoadHelper(QDataStream &stream, T *t)
10892 template <typename T>
10893 int qRegisterMetaType(const char *typeName
10899 typedef void*(*ConstructPtr)(const T*);
10900 ConstructPtr cptr = qMetaTypeConstructHelper<T>;
10901 typedef void(*DeletePtr)(T*);
10902 DeletePtr dptr = qMetaTypeDeleteHelper<T>;
10904 return QMetaType::registerType(typeName, reinterpret_cast<QMetaType::Destructor>(dptr),
10905 reinterpret_cast<QMetaType::Constructor>(cptr));
10909 template <typename T>
10910 void qRegisterMetaTypeStreamOperators(const char *typeName
10916 typedef void(*SavePtr)(QDataStream &, const T *);
10917 typedef void(*LoadPtr)(QDataStream &, T *);
10918 SavePtr sptr = qMetaTypeSaveHelper<T>;
10919 LoadPtr lptr = qMetaTypeLoadHelper<T>;
10921 qRegisterMetaType<T>(typeName);
10922 QMetaType::registerStreamOperators(typeName, reinterpret_cast<QMetaType::SaveOperator>(sptr),
10923 reinterpret_cast<QMetaType::LoadOperator>(lptr));
10927 template <typename T>
10930 enum { Defined = 0 };
10933 template <typename T>
10934 struct QMetaTypeId2
10936 enum { Defined = QMetaTypeId<T>::Defined };
10937 static inline int qt_metatype_id() { return QMetaTypeId<T>::qt_metatype_id(); }
10940 template <typename T>
10941 inline int qMetaTypeId(
10947 return QMetaTypeId2<T>::qt_metatype_id();
10950 template <typename T>
10951 inline int qRegisterMetaType(
10960 return qMetaTypeId(dummy);
10963 # 231 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qmetatype.h"
11003 class QKeySequence;
11010 template<> struct QMetaTypeId2<QString> { enum { Defined = 1, MetaType = QMetaType::QString }; static inline int qt_metatype_id() { return QMetaType::QString; } };
11011 template<> struct QMetaTypeId2<int> { enum { Defined = 1, MetaType = QMetaType::Int }; static inline int qt_metatype_id() { return QMetaType::Int; } };
11012 template<> struct QMetaTypeId2<uint> { enum { Defined = 1, MetaType = QMetaType::UInt }; static inline int qt_metatype_id() { return QMetaType::UInt; } };
11013 template<> struct QMetaTypeId2<bool> { enum { Defined = 1, MetaType = QMetaType::Bool }; static inline int qt_metatype_id() { return QMetaType::Bool; } };
11014 template<> struct QMetaTypeId2<double> { enum { Defined = 1, MetaType = QMetaType::Double }; static inline int qt_metatype_id() { return QMetaType::Double; } };
11015 template<> struct QMetaTypeId2<QByteArray> { enum { Defined = 1, MetaType = QMetaType::QByteArray }; static inline int qt_metatype_id() { return QMetaType::QByteArray; } };
11016 template<> struct QMetaTypeId2<QChar> { enum { Defined = 1, MetaType = QMetaType::QChar }; static inline int qt_metatype_id() { return QMetaType::QChar; } };
11017 template<> struct QMetaTypeId2<long> { enum { Defined = 1, MetaType = QMetaType::Long }; static inline int qt_metatype_id() { return QMetaType::Long; } };
11018 template<> struct QMetaTypeId2<short> { enum { Defined = 1, MetaType = QMetaType::Short }; static inline int qt_metatype_id() { return QMetaType::Short; } };
11019 template<> struct QMetaTypeId2<char> { enum { Defined = 1, MetaType = QMetaType::Char }; static inline int qt_metatype_id() { return QMetaType::Char; } };
11020 template<> struct QMetaTypeId2<ulong> { enum { Defined = 1, MetaType = QMetaType::ULong }; static inline int qt_metatype_id() { return QMetaType::ULong; } };
11021 template<> struct QMetaTypeId2<ushort> { enum { Defined = 1, MetaType = QMetaType::UShort }; static inline int qt_metatype_id() { return QMetaType::UShort; } };
11022 template<> struct QMetaTypeId2<uchar> { enum { Defined = 1, MetaType = QMetaType::UChar }; static inline int qt_metatype_id() { return QMetaType::UChar; } };
11023 template<> struct QMetaTypeId2<float> { enum { Defined = 1, MetaType = QMetaType::Float }; static inline int qt_metatype_id() { return QMetaType::Float; } };
11024 template<> struct QMetaTypeId2<QObject *> { enum { Defined = 1, MetaType = QMetaType::QObjectStar }; static inline int qt_metatype_id() { return QMetaType::QObjectStar; } };
11025 template<> struct QMetaTypeId2<QWidget *> { enum { Defined = 1, MetaType = QMetaType::QWidgetStar }; static inline int qt_metatype_id() { return QMetaType::QWidgetStar; } };
11026 template<> struct QMetaTypeId2<void *> { enum { Defined = 1, MetaType = QMetaType::VoidStar }; static inline int qt_metatype_id() { return QMetaType::VoidStar; } };
11027 template<> struct QMetaTypeId2<qlonglong> { enum { Defined = 1, MetaType = QMetaType::LongLong }; static inline int qt_metatype_id() { return QMetaType::LongLong; } };
11028 template<> struct QMetaTypeId2<qulonglong> { enum { Defined = 1, MetaType = QMetaType::ULongLong }; static inline int qt_metatype_id() { return QMetaType::ULongLong; } };
11029 template<> struct QMetaTypeId2<QStringList> { enum { Defined = 1, MetaType = QMetaType::QStringList }; static inline int qt_metatype_id() { return QMetaType::QStringList; } };
11030 template<> struct QMetaTypeId2<QBitArray> { enum { Defined = 1, MetaType = QMetaType::QBitArray }; static inline int qt_metatype_id() { return QMetaType::QBitArray; } };
11031 template<> struct QMetaTypeId2<QDate> { enum { Defined = 1, MetaType = QMetaType::QDate }; static inline int qt_metatype_id() { return QMetaType::QDate; } };
11032 template<> struct QMetaTypeId2<QTime> { enum { Defined = 1, MetaType = QMetaType::QTime }; static inline int qt_metatype_id() { return QMetaType::QTime; } };
11033 template<> struct QMetaTypeId2<QDateTime> { enum { Defined = 1, MetaType = QMetaType::QDateTime }; static inline int qt_metatype_id() { return QMetaType::QDateTime; } };
11034 template<> struct QMetaTypeId2<QUrl> { enum { Defined = 1, MetaType = QMetaType::QUrl }; static inline int qt_metatype_id() { return QMetaType::QUrl; } };
11035 template<> struct QMetaTypeId2<QLocale> { enum { Defined = 1, MetaType = QMetaType::QLocale }; static inline int qt_metatype_id() { return QMetaType::QLocale; } };
11036 template<> struct QMetaTypeId2<QRect> { enum { Defined = 1, MetaType = QMetaType::QRect }; static inline int qt_metatype_id() { return QMetaType::QRect; } };
11037 template<> struct QMetaTypeId2<QRectF> { enum { Defined = 1, MetaType = QMetaType::QRectF }; static inline int qt_metatype_id() { return QMetaType::QRectF; } };
11038 template<> struct QMetaTypeId2<QSize> { enum { Defined = 1, MetaType = QMetaType::QSize }; static inline int qt_metatype_id() { return QMetaType::QSize; } };
11039 template<> struct QMetaTypeId2<QSizeF> { enum { Defined = 1, MetaType = QMetaType::QSizeF }; static inline int qt_metatype_id() { return QMetaType::QSizeF; } };
11040 template<> struct QMetaTypeId2<QLine> { enum { Defined = 1, MetaType = QMetaType::QLine }; static inline int qt_metatype_id() { return QMetaType::QLine; } };
11041 template<> struct QMetaTypeId2<QLineF> { enum { Defined = 1, MetaType = QMetaType::QLineF }; static inline int qt_metatype_id() { return QMetaType::QLineF; } };
11042 template<> struct QMetaTypeId2<QPoint> { enum { Defined = 1, MetaType = QMetaType::QPoint }; static inline int qt_metatype_id() { return QMetaType::QPoint; } };
11043 template<> struct QMetaTypeId2<QPointF> { enum { Defined = 1, MetaType = QMetaType::QPointF }; static inline int qt_metatype_id() { return QMetaType::QPointF; } };
11045 template<> struct QMetaTypeId2<QRegExp> { enum { Defined = 1, MetaType = QMetaType::QRegExp }; static inline int qt_metatype_id() { return QMetaType::QRegExp; } };
11051 template<> struct QMetaTypeId2<QFont> { enum { Defined = 1, MetaType = QMetaType::QFont }; static inline int qt_metatype_id() { return QMetaType::QFont; } };
11052 template<> struct QMetaTypeId2<QPixmap> { enum { Defined = 1, MetaType = QMetaType::QPixmap }; static inline int qt_metatype_id() { return QMetaType::QPixmap; } };
11053 template<> struct QMetaTypeId2<QBrush> { enum { Defined = 1, MetaType = QMetaType::QBrush }; static inline int qt_metatype_id() { return QMetaType::QBrush; } };
11054 template<> struct QMetaTypeId2<QColor> { enum { Defined = 1, MetaType = QMetaType::QColor }; static inline int qt_metatype_id() { return QMetaType::QColor; } };
11055 template<> struct QMetaTypeId2<QPalette> { enum { Defined = 1, MetaType = QMetaType::QPalette }; static inline int qt_metatype_id() { return QMetaType::QPalette; } };
11056 template<> struct QMetaTypeId2<QIcon> { enum { Defined = 1, MetaType = QMetaType::QIcon }; static inline int qt_metatype_id() { return QMetaType::QIcon; } };
11057 template<> struct QMetaTypeId2<QImage> { enum { Defined = 1, MetaType = QMetaType::QImage }; static inline int qt_metatype_id() { return QMetaType::QImage; } };
11058 template<> struct QMetaTypeId2<QPolygon> { enum { Defined = 1, MetaType = QMetaType::QPolygon }; static inline int qt_metatype_id() { return QMetaType::QPolygon; } };
11059 template<> struct QMetaTypeId2<QRegion> { enum { Defined = 1, MetaType = QMetaType::QRegion }; static inline int qt_metatype_id() { return QMetaType::QRegion; } };
11060 template<> struct QMetaTypeId2<QBitmap> { enum { Defined = 1, MetaType = QMetaType::QBitmap }; static inline int qt_metatype_id() { return QMetaType::QBitmap; } };
11061 template<> struct QMetaTypeId2<QCursor> { enum { Defined = 1, MetaType = QMetaType::QCursor }; static inline int qt_metatype_id() { return QMetaType::QCursor; } };
11062 template<> struct QMetaTypeId2<QSizePolicy> { enum { Defined = 1, MetaType = QMetaType::QSizePolicy }; static inline int qt_metatype_id() { return QMetaType::QSizePolicy; } };
11063 template<> struct QMetaTypeId2<QKeySequence> { enum { Defined = 1, MetaType = QMetaType::QKeySequence }; static inline int qt_metatype_id() { return QMetaType::QKeySequence; } };
11064 template<> struct QMetaTypeId2<QPen> { enum { Defined = 1, MetaType = QMetaType::QPen }; static inline int qt_metatype_id() { return QMetaType::QPen; } };
11065 template<> struct QMetaTypeId2<QTextLength> { enum { Defined = 1, MetaType = QMetaType::QTextLength }; static inline int qt_metatype_id() { return QMetaType::QTextLength; } };
11066 template<> struct QMetaTypeId2<QTextFormat> { enum { Defined = 1, MetaType = QMetaType::QTextFormat }; static inline int qt_metatype_id() { return QMetaType::QTextFormat; } };
11067 template<> struct QMetaTypeId2<QMatrix> { enum { Defined = 1, MetaType = QMetaType::QMatrix }; static inline int qt_metatype_id() { return QMetaType::QMatrix; } };
11068 template<> struct QMetaTypeId2<QTransform> { enum { Defined = 1, MetaType = QMetaType::QTransform }; static inline int qt_metatype_id() { return QMetaType::QTransform; } };
11071 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qmetatype.h" 2
11072 # 48 "./project.h" 2
11077 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script/qscriptengine.h" 1
11078 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script/qscriptengine.h"
11079 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qmetatype.h" 1
11080 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script/qscriptengine.h" 2
11084 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qvariant.h" 1
11085 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h" 1
11086 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h"
11087 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic.h" 1
11088 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h" 2
11089 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qbytearray.h" 1
11090 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h" 2
11091 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qlist.h" 1
11092 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h" 2
11093 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qmetatype.h" 1
11094 # 46 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h" 2
11095 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qmap.h" 1
11096 # 47 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h" 2
11097 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
11098 # 48 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h" 2
11102 typedef QtValidLicenseForCoreModule QtCoreModule;
11128 class QVariantComparisonHelper;
11131 template <typename T>
11132 inline QVariant qVariantFromValue(const T &);
11134 template <typename T>
11135 inline void qVariantSetValue(QVariant &, const T &);
11137 template<typename T>
11138 inline T qVariantValue(const QVariant &);
11140 template<typename T>
11141 inline bool qVariantCanConvert(const QVariant &);
11177 LastCoreType = RegExp,
11201 LastGuiType = Transform,
11209 LastType = 0xffffffff
11214 QVariant(Type type);
11215 QVariant(int typeOrUserType, const void *copy);
11216 QVariant(const QVariant &other);
11219 QVariant(QDataStream &s);
11224 QVariant(qlonglong ll);
11225 QVariant(qulonglong ull);
11227 QVariant(double d);
11229 QVariant(const char *str);
11232 QVariant(const QByteArray &bytearray);
11233 QVariant(const QBitArray &bitarray);
11234 QVariant(const QString &string);
11235 QVariant(const QLatin1String &string);
11236 QVariant(const QStringList &stringlist);
11237 QVariant(const QChar &qchar);
11238 QVariant(const QDate &date);
11239 QVariant(const QTime &time);
11240 QVariant(const QDateTime &datetime);
11241 QVariant(const QList<QVariant> &list);
11242 QVariant(const QMap<QString,QVariant> &map);
11243 # 202 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h"
11244 QVariant(const QUrl &url);
11245 QVariant(const QLocale &locale);
11247 QVariant(const QRegExp ®Exp);
11249 QVariant(Qt::GlobalColor color);
11251 QVariant& operator=(const QVariant &other);
11254 int userType() const;
11255 const char *typeName() const;
11257 bool canConvert(Type t) const;
11258 bool convert(Type t);
11259 # 225 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h"
11260 inline bool isValid() const;
11261 bool isNull() const;
11266 inline bool isDetached() const;
11268 int toInt(bool *ok = 0) const;
11269 uint toUInt(bool *ok = 0) const;
11270 qlonglong toLongLong(bool *ok = 0) const;
11271 qulonglong toULongLong(bool *ok = 0) const;
11272 bool toBool() const;
11273 double toDouble(bool *ok = 0) const;
11274 QByteArray toByteArray() const;
11275 QBitArray toBitArray() const;
11276 QString toString() const;
11277 QStringList toStringList() const;
11278 QChar toChar() const;
11279 QDate toDate() const;
11280 QTime toTime() const;
11281 QDateTime toDateTime() const;
11282 QList<QVariant> toList() const;
11283 QMap<QString, QVariant> toMap() const;
11284 # 260 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h"
11285 QUrl toUrl() const;
11286 QLocale toLocale() const;
11288 QRegExp toRegExp() const;
11289 # 288 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h"
11290 void load(QDataStream &ds);
11291 void save(QDataStream &ds) const;
11293 static const char *typeToName(Type type);
11294 static Type nameToType(const char *name);
11303 const void *constData() const;
11304 inline const void *data() const { return constData(); }
11307 template<typename T>
11308 inline void setValue(const T &value);
11310 template<typename T>
11311 inline T value() const
11312 { return qVariantValue<T>(*this); }
11314 template<typename T>
11315 static inline QVariant fromValue(const T &value)
11316 { return qVariantFromValue(value); }
11318 template<typename T>
11319 bool canConvert() const
11320 { return qVariantCanConvert<T>(*this); }
11325 struct PrivateShared
11327 inline PrivateShared() : ref(1) { }
11328 inline PrivateShared(void *v) : ptr(v), ref(1) { }
11334 inline Private(): type(Invalid), is_shared(false), is_null(true) { data.ptr = 0; }
11335 inline Private(const Private &other)
11336 : data(other.data), type(other.type),
11337 is_shared(other.is_shared), is_null(other.is_null)
11349 PrivateShared *shared;
11352 uint is_shared : 1;
11356 typedef void (*f_construct)(Private *, const void *);
11357 typedef void (*f_clear)(Private *);
11358 typedef bool (*f_null)(const Private *);
11360 typedef void (*f_load)(Private *, QDataStream &);
11361 typedef void (*f_save)(const Private *, QDataStream &);
11363 typedef bool (*f_compare)(const Private *, const Private *);
11364 typedef bool (*f_convert)(const QVariant::Private *d, Type t, void *, bool *);
11365 typedef bool (*f_canConvert)(const QVariant::Private *d, Type t);
11366 typedef void (*f_debugStream)(QDebug, const QVariant &);
11368 f_construct construct;
11377 f_canConvert canConvert;
11378 f_debugStream debugStream;
11382 inline bool operator==(const QVariant &v) const
11384 inline bool operator!=(const QVariant &v) const
11385 { return !cmp(v); }
11388 friend inline bool qvariant_cast_helper(const QVariant &, QVariant::Type, void *);
11389 friend int qRegisterGuiVariant();
11390 friend int qUnregisterGuiVariant();
11391 friend inline bool operator==(const QVariant &, const QVariantComparisonHelper &);
11393 friend QDebug operator<<(QDebug, const QVariant &);
11397 static const Handler *handler;
11399 void create(int type, const void *copy);
11403 bool cmp(const QVariant &other) const;
11412 inline QVariant(bool, int) { do {if(!(false))qt_assert("false","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h",410);} while (0); }
11415 typedef Private DataPtr;
11416 inline DataPtr &data_ptr() { return d; }
11419 typedef QList<QVariant> QVariantList;
11420 typedef QMap<QString, QVariant> QVariantMap;
11422 template<> struct QMetaTypeId2<QVariantList> { enum { Defined = 1, MetaType = QMetaType::QVariantList }; static inline int qt_metatype_id() { return QMetaType::QVariantList; } };
11423 template<> struct QMetaTypeId2<QVariantMap> { enum { Defined = 1, MetaType = QMetaType::QVariantMap }; static inline int qt_metatype_id() { return QMetaType::QVariantMap; } };
11425 inline bool qvariant_cast_helper(const QVariant &v, QVariant::Type tp, void *ptr)
11426 { return QVariant::handler->convert(&v.d, tp, ptr, 0); }
11428 template <typename T>
11429 inline QVariant qVariantFromValue(const T &t)
11431 return QVariant(qMetaTypeId<T>(reinterpret_cast<T *>(0)), &t);
11435 inline QVariant qVariantFromValue(const QVariant &t) { return t; }
11437 template <typename T>
11438 inline void qVariantSetValue(QVariant &v, const T &t)
11440 v = QVariant(qMetaTypeId<T>(reinterpret_cast<T *>(0)), &t);
11443 inline QVariant::QVariant() {}
11444 inline bool QVariant::isValid() const { return d.type != Invalid; }
11445 # 484 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h"
11446 template<typename T>
11447 inline void QVariant::setValue(const T &avalue)
11448 { qVariantSetValue(*this, avalue); }
11452 QDataStream& operator>> (QDataStream& s, QVariant& p);
11453 QDataStream& operator<< (QDataStream& s, const QVariant& p);
11454 QDataStream& operator>> (QDataStream& s, QVariant::Type& p);
11455 QDataStream& operator<< (QDataStream& s, const QVariant::Type p);
11458 inline bool QVariant::isDetached() const
11459 { return !d.is_shared || d.data.shared->ref == 1; }
11460 # 508 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h"
11461 class QVariantComparisonHelper
11464 inline QVariantComparisonHelper(const QVariant &var)
11467 friend inline bool operator==(const QVariant &, const QVariantComparisonHelper &);
11471 inline bool operator==(const QVariant &v1, const QVariantComparisonHelper &v2)
11473 return v1.cmp(*v2.v);
11476 inline bool operator!=(const QVariant &v1, const QVariantComparisonHelper &v2)
11478 return !operator==(v1, v2);
11480 # 556 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/kernel/qvariant.h"
11481 template<typename T> T qvariant_cast(const QVariant &v)
11483 const int vid = qMetaTypeId<T>(static_cast<T *>(0));
11484 if (vid == v.userType())
11485 return *reinterpret_cast<const T *>(v.constData());
11486 if (vid < int(QMetaType::User)) {
11488 if (qvariant_cast_helper(v, QVariant::Type(vid), &t))
11494 template<typename T>
11495 inline T qVariantValue(const QVariant &variant)
11496 { return qvariant_cast<T>(variant); }
11498 template<typename T>
11499 inline bool qVariantCanConvert(const QVariant &variant)
11501 return variant.canConvert(static_cast<QVariant::Type>(
11502 qMetaTypeId<T>(static_cast<T *>(0))));
11506 template <> inline bool qIsDetached<QVariant>(QVariant &t) { return t.isDetached(); } template <typename T> inline void qSwap(T &, T &); template <> inline void qSwap<QVariant>(QVariant &value1, QVariant &value2) { const QVariant::DataPtr t = value1.data_ptr(); value1.data_ptr() = value2.data_ptr(); value2.data_ptr() = t; }
11507 template <> class QTypeInfo<QVariant> { public: enum { isComplex = (((Q_MOVABLE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(QVariant)>sizeof(void*)), isPointer = false, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "QVariant"; } };
11510 QDebug operator<<(QDebug, const QVariant &);
11511 QDebug operator<<(QDebug, const QVariant::Type);
11515 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qvariant.h" 2
11516 # 47 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script/qscriptengine.h" 2
11521 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qobjectdefs.h" 1
11522 # 52 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script/qscriptengine.h" 2
11525 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/qscriptvalue.h" 1
11526 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/../../src/script/qscriptvalue.h" 1
11527 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/../../src/script/qscriptvalue.h"
11528 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
11529 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/../../src/script/qscriptvalue.h" 2
11533 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qlist.h" 1
11534 # 47 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/../../src/script/qscriptvalue.h" 2
11538 typedef QtValidLicenseForScriptModule QtScriptModule;
11540 class QScriptValue;
11541 class QScriptEngine;
11544 struct QMetaObject;
11550 typedef QList<QScriptValue> QScriptValueList;
11552 typedef double qsreal;
11554 class QScriptValuePrivate;
11559 ResolveLocal = 0x00,
11560 ResolvePrototype = 0x01,
11561 ResolveScope = 0x02,
11562 ResolveFull = ResolvePrototype | ResolveScope
11565 typedef QFlags<ResolveFlag> ResolveFlags;
11567 enum PropertyFlag {
11568 ReadOnly = 0x00000001,
11569 Undeletable = 0x00000002,
11570 SkipInEnumeration = 0x00000004,
11572 PropertyGetter = 0x00000008,
11573 PropertySetter = 0x00000010,
11575 QObjectMember = 0x00000020,
11577 KeepExistingFlags = 0x00000800,
11579 UserRange = 0xff000000
11581 typedef QFlags<PropertyFlag> PropertyFlags;
11583 enum SpecialValue {
11591 QScriptValue(const QScriptValue &other);
11592 QScriptValue(QScriptEngine *engine, SpecialValue val);
11593 QScriptValue(QScriptEngine *engine, bool val);
11594 QScriptValue(QScriptEngine *engine, int val);
11595 QScriptValue(QScriptEngine *engine, uint val);
11596 QScriptValue(QScriptEngine *engine, qsreal val);
11597 QScriptValue(QScriptEngine *engine, const QString &val);
11600 QScriptValue(QScriptEngine *engine, const char *val);
11603 QScriptValue &operator=(const QScriptValue &other);
11605 QScriptEngine *engine() const;
11607 bool isValid() const;
11608 bool isBoolean() const;
11609 bool isNumber() const;
11610 bool isFunction() const;
11611 bool isNull() const;
11612 bool isString() const;
11613 bool isUndefined() const;
11614 bool isVariant() const;
11615 bool isQObject() const;
11616 bool isQMetaObject() const;
11617 bool isObject() const;
11618 bool isDate() const;
11619 bool isRegExp() const;
11620 bool isArray() const;
11621 bool isError() const;
11623 QString toString() const;
11624 qsreal toNumber() const;
11625 bool toBoolean() const;
11626 qsreal toInteger() const;
11627 qint32 toInt32() const;
11628 quint32 toUInt32() const;
11629 quint16 toUInt16() const;
11630 QVariant toVariant() const;
11631 QObject *toQObject() const;
11632 const QMetaObject *toQMetaObject() const;
11633 QScriptValue toObject() const;
11634 QDateTime toDateTime() const;
11636 QRegExp toRegExp() const;
11639 bool instanceOf(const QScriptValue &other) const;
11641 bool lessThan(const QScriptValue &other) const;
11642 bool equals(const QScriptValue &other) const;
11643 bool strictlyEquals(const QScriptValue &other) const;
11645 QScriptValue prototype() const;
11646 void setPrototype(const QScriptValue &prototype);
11648 QScriptValue scope() const;
11649 void setScope(const QScriptValue &scope);
11651 QScriptValue property(const QString &name,
11652 const ResolveFlags &mode = ResolvePrototype) const;
11653 void setProperty(const QString &name, const QScriptValue &value,
11654 const PropertyFlags &flags = KeepExistingFlags);
11656 QScriptValue property(quint32 arrayIndex,
11657 const ResolveFlags &mode = ResolvePrototype) const;
11658 void setProperty(quint32 arrayIndex, const QScriptValue &value,
11659 const PropertyFlags &flags = KeepExistingFlags);
11661 QScriptValue::PropertyFlags propertyFlags(
11662 const QString &name, const ResolveFlags &mode = ResolvePrototype) const;
11664 QScriptValue call(const QScriptValue &thisObject = QScriptValue(),
11665 const QScriptValueList &args = QScriptValueList());
11666 QScriptValue call(const QScriptValue &thisObject,
11667 const QScriptValue &arguments);
11668 QScriptValue construct(const QScriptValueList &args = QScriptValueList());
11669 QScriptValue construct(const QScriptValue &arguments);
11672 QScriptValuePrivate *d_ptr;
11674 inline QScriptValuePrivate* d_func() { return reinterpret_cast<QScriptValuePrivate *>(d_ptr); } inline const QScriptValuePrivate* d_func() const { return reinterpret_cast<const QScriptValuePrivate *>(d_ptr); } friend class QScriptValuePrivate;
11677 inline QFlags<QScriptValue::ResolveFlags::enum_type> operator|(QScriptValue::ResolveFlags::enum_type f1, QScriptValue::ResolveFlags::enum_type f2) { return QFlags<QScriptValue::ResolveFlags::enum_type>(f1) | f2; } inline QFlags<QScriptValue::ResolveFlags::enum_type> operator|(QScriptValue::ResolveFlags::enum_type f1, QFlags<QScriptValue::ResolveFlags::enum_type> f2) { return f2 | f1; }
11678 inline QFlags<QScriptValue::PropertyFlags::enum_type> operator|(QScriptValue::PropertyFlags::enum_type f1, QScriptValue::PropertyFlags::enum_type f2) { return QFlags<QScriptValue::PropertyFlags::enum_type>(f1) | f2; } inline QFlags<QScriptValue::PropertyFlags::enum_type> operator|(QScriptValue::PropertyFlags::enum_type f1, QFlags<QScriptValue::PropertyFlags::enum_type> f2) { return f2 | f1; }
11681 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/qscriptvalue.h" 2
11682 # 55 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script/qscriptengine.h" 2
11683 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/qscriptcontext.h" 1
11684 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/../../src/script/qscriptcontext.h" 1
11685 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/../../src/script/qscriptcontext.h"
11686 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qobjectdefs.h" 1
11687 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/../../src/script/qscriptcontext.h" 2
11691 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/qscriptvalue.h" 1
11692 # 47 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/../../src/script/qscriptcontext.h" 2
11696 typedef QtValidLicenseForScriptModule QtScriptModule;
11698 class QScriptContextPrivate;
11700 class QScriptContext
11703 enum ExecutionState {
11719 QScriptContext *parentContext() const;
11720 QScriptEngine *engine() const;
11722 ExecutionState state() const;
11723 QScriptValue callee() const;
11725 int argumentCount() const;
11726 QScriptValue argument(int index) const;
11727 QScriptValue argumentsObject() const;
11729 QScriptValue returnValue() const;
11730 void setReturnValue(const QScriptValue &result);
11732 QScriptValue activationObject() const;
11733 void setActivationObject(const QScriptValue &activation);
11735 QScriptValue thisObject() const;
11736 void setThisObject(const QScriptValue &thisObject);
11738 bool isCalledAsConstructor() const;
11740 QScriptValue throwValue(const QScriptValue &value);
11741 QScriptValue throwError(Error error, const QString &text);
11742 QScriptValue throwError(const QString &text);
11744 QStringList backtrace() const;
11749 QScriptContextPrivate *d_ptr;
11751 inline QScriptContextPrivate* d_func() { return reinterpret_cast<QScriptContextPrivate *>(d_ptr); } inline const QScriptContextPrivate* d_func() const { return reinterpret_cast<const QScriptContextPrivate *>(d_ptr); } friend class QScriptContextPrivate;
11752 QScriptContext(const QScriptContext &); QScriptContext &operator=(const QScriptContext &);
11756 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtScript/qscriptcontext.h" 2
11757 # 56 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script/qscriptengine.h" 2
11761 typedef QtValidLicenseForScriptModule QtScriptModule;
11764 class QScriptEnginePrivate;
11765 # 80 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script/qscriptengine.h"
11770 template <typename T>
11771 inline QScriptValue qScriptValueFromValue(QScriptEngine *, const T &);
11773 template <typename T>
11774 inline T qScriptValueToValue(const QScriptValue &);
11777 class QScriptEngine
11786 enum ValueOwnership {
11792 enum QObjectWrapOption {
11793 ExcludeChildObjects = 0x0001,
11794 ExcludeSuperClassMethods = 0x0002,
11795 ExcludeSuperClassProperties = 0x0004,
11797 AutoCreateDynamicProperties = 0x0100
11799 typedef QFlags<QObjectWrapOption> QObjectWrapOptions;
11805 virtual ~QScriptEngine();
11807 QScriptValue globalObject() const;
11808 QScriptContext *currentContext() const;
11809 QScriptContext *pushContext();
11812 bool canEvaluate(const QString &program) const;
11814 QScriptValue evaluate(const QString &program, const QString &fileName = QString(), int lineNumber = 1);
11816 bool hasUncaughtException() const;
11817 QScriptValue uncaughtException() const;
11818 int uncaughtExceptionLineNumber() const;
11819 QStringList uncaughtExceptionBacktrace() const;
11821 QScriptValue nullValue();
11822 QScriptValue undefinedValue();
11824 typedef QScriptValue (*FunctionSignature)(QScriptContext *, QScriptEngine *);
11826 QScriptValue newFunction(FunctionSignature signature, int length = 0);
11827 QScriptValue newFunction(FunctionSignature signature, const QScriptValue &prototype, int length = 0);
11828 QScriptValue newVariant(const QVariant &value);
11831 QScriptValue newRegExp(const QRegExp ®exp);
11834 QScriptValue newObject();
11835 QScriptValue newArray(uint length = 0);
11836 QScriptValue newRegExp(const QString &pattern, const QString &flags);
11837 QScriptValue newDate(qsreal value);
11838 QScriptValue newDate(const QDateTime &value);
11839 QScriptValue newActivationObject();
11840 # 171 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script/qscriptengine.h"
11841 QScriptValue defaultPrototype(int metaTypeId) const;
11842 void setDefaultPrototype(int metaTypeId, const QScriptValue &prototype);
11845 typedef QScriptValue (*MarshalFunction)(QScriptEngine *, const void *);
11846 typedef void (*DemarshalFunction)(const QScriptValue &, void *);
11851 template <typename T>
11852 inline QScriptValue toScriptValue(const T &value)
11854 return qScriptValueFromValue(this, value);
11856 template <typename T>
11857 inline T fromScriptValue(const QScriptValue &value)
11859 return qScriptValueToValue<T>(value);
11863 QScriptValue importExtension(const QString &extension);
11865 void collectGarbage();
11867 void setProcessEventsInterval(int interval);
11868 int processEventsInterval() const;
11871 QScriptValue create(int type, const void *ptr);
11873 bool convert(const QScriptValue &value, int type, void *ptr);
11875 void registerCustomType(int type, MarshalFunction mf, DemarshalFunction df,
11876 const QScriptValue &prototype);
11878 friend inline void qScriptRegisterMetaType_helper(QScriptEngine *,
11879 int, MarshalFunction, DemarshalFunction, const QScriptValue &);
11881 friend inline QScriptValue qScriptValueFromValue_helper(QScriptEngine *, int, const void *);
11883 friend inline bool qscriptvalue_cast_helper(const QScriptValue &, int, void *);
11887 QScriptEnginePrivate *d_ptr;
11889 QScriptEngine(QScriptEnginePrivate &dd);
11895 inline QScriptEnginePrivate* d_func() { return reinterpret_cast<QScriptEnginePrivate *>(d_ptr); } inline const QScriptEnginePrivate* d_func() const { return reinterpret_cast<const QScriptEnginePrivate *>(d_ptr); } friend class QScriptEnginePrivate;
11896 QScriptEngine(const QScriptEngine &); QScriptEngine &operator=(const QScriptEngine &);
11898 # 249 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/src/script/qscriptengine.h"
11899 inline QScriptValue qScriptValueFromValue_helper(QScriptEngine *engine, int type, const void *ptr)
11902 return QScriptValue();
11904 return engine->create(type, ptr);
11907 template <typename T>
11908 inline QScriptValue qScriptValueFromValue(QScriptEngine *engine, const T &t)
11910 return qScriptValueFromValue_helper(engine, qMetaTypeId<T>(), &t);
11913 inline bool qscriptvalue_cast_helper(const QScriptValue &value, int type, void *ptr)
11915 if (QScriptEngine *eng = value.engine())
11916 return eng->convert(value, type, ptr);
11921 template<typename T>
11922 T qscriptvalue_cast(const QScriptValue &value
11929 const int id = qMetaTypeId<T>();
11931 if (qscriptvalue_cast_helper(value, id, &t))
11933 else if (value.isVariant())
11934 return qvariant_cast<T>(value.toVariant());
11939 template <typename T>
11940 inline T qScriptValueToValue(const QScriptValue &value)
11942 return qscriptvalue_cast<T>(value);
11945 inline void qScriptRegisterMetaType_helper(QScriptEngine *eng, int type,
11946 QScriptEngine::MarshalFunction mf,
11947 QScriptEngine::DemarshalFunction df,
11948 const QScriptValue &prototype)
11950 eng->registerCustomType(type, mf, df, prototype);
11953 template<typename T>
11954 int qScriptRegisterMetaType(
11955 QScriptEngine *eng,
11956 QScriptValue (*toScriptValue)(QScriptEngine *, const T &t),
11957 void (*fromScriptValue)(const QScriptValue &, T &t),
11958 const QScriptValue &prototype = QScriptValue()
11964 const int id = qRegisterMetaType<T>();
11966 qScriptRegisterMetaType_helper(
11967 eng, id, reinterpret_cast<QScriptEngine::MarshalFunction>(toScriptValue),
11968 reinterpret_cast<QScriptEngine::DemarshalFunction>(fromScriptValue),
11974 template <class Container>
11975 QScriptValue qScriptValueFromSequence(QScriptEngine *eng, const Container &cont)
11977 QScriptValue a = eng->newArray();
11978 typename Container::const_iterator begin = cont.begin();
11979 typename Container::const_iterator end = cont.end();
11980 typename Container::const_iterator it;
11982 for (it = begin, i = 0; it != end; ++it, ++i)
11983 a.setProperty(i, qScriptValueFromValue(eng, *it));
11987 template <class Container>
11988 void qScriptValueToSequence(const QScriptValue &value, Container &cont)
11990 quint32 len = value.property(QLatin1String("length")).toUInt32();
11991 for (quint32 i = 0; i < len; ++i) {
11992 QScriptValue item = value.property(i);
11996 cont.push_back(qscriptvalue_cast<typename Container::value_type>(item));
12001 template<typename T>
12002 int qScriptRegisterSequenceMetaType(
12003 QScriptEngine *engine,
12004 const QScriptValue &prototype = QScriptValue()
12010 return qScriptRegisterMetaType<T>(engine, qScriptValueFromSequence,
12011 qScriptValueToSequence, prototype);
12014 inline QFlags<QScriptEngine::QObjectWrapOptions::enum_type> operator|(QScriptEngine::QObjectWrapOptions::enum_type f1, QScriptEngine::QObjectWrapOptions::enum_type f2) { return QFlags<QScriptEngine::QObjectWrapOptions::enum_type>(f1) | f2; } inline QFlags<QScriptEngine::QObjectWrapOptions::enum_type> operator|(QScriptEngine::QObjectWrapOptions::enum_type f1, QFlags<QScriptEngine::QObjectWrapOptions::enum_type> f2) { return f2 | f1; }
12017 # 53 "./project.h" 2
12020 class QMakeProperty;
12022 struct ParsableBlock;
12023 struct IteratorBlock;
12024 struct FunctionBlock;
12030 enum TestStatus { TestNone, TestFound, TestSeek };
12031 ScopeBlock() : iterate(0), ignore(false), else_status(TestNone) { }
12032 ScopeBlock(bool i) : iterate(0), ignore(i), else_status(TestNone) { }
12034 IteratorBlock *iterate;
12035 uint ignore : 1, else_status : 2;
12037 friend struct ParsableBlock;
12038 friend struct IteratorBlock;
12039 friend struct FunctionBlock;
12044 QStack<ScopeBlock> scope_blocks;
12045 QStack<FunctionBlock *> function_blocks;
12046 IteratorBlock *iterator;
12047 FunctionBlock *function;
12048 QMap<QString, FunctionBlock*> testFunctions, replaceFunctions;
12051 QString pfile, cfile;
12052 QMakeProperty *prop;
12054 QMap<QString, QStringList> vars, base_vars, cache;
12055 bool parse(const QString &text, QMap<QString, QStringList> &place, int line_count=1);
12057 enum IncludeStatus {
12059 IncludeFeatureAlreadyLoaded,
12062 IncludeParseFailure
12064 enum IncludeFlags {
12065 IncludeFlagNone = 0x00,
12066 IncludeFlagFeature = 0x01,
12067 IncludeFlagNewParser = 0x02,
12068 IncludeFlagNewProject = 0x04
12070 IncludeStatus doProjectInclude(QString file, uchar flags, QMap<QString, QStringList> &place);
12072 bool doProjectCheckReqs(const QStringList &deps, QMap<QString, QStringList> &place);
12073 bool doVariableReplace(QString &str, QMap<QString, QStringList> &place);
12074 QStringList doVariableReplaceExpand(const QString &str, QMap<QString, QStringList> &place, bool *ok=0);
12075 void init(QMakeProperty *, const QMap<QString, QStringList> *);
12076 QStringList &values(const QString &v, QMap<QString, QStringList> &place);
12079 QMakeProject() { init(0, 0); }
12080 QMakeProject(QMakeProperty *p) { init(p, 0); }
12081 QMakeProject(QMakeProject *p, const QMap<QString, QStringList> *nvars=0);
12082 QMakeProject(const QMap<QString, QStringList> &nvars) { init(0, &nvars); }
12083 QMakeProject(QMakeProperty *p, const QMap<QString, QStringList> &nvars) { init(p, &nvars); }
12086 enum { ReadCache=0x01, ReadConf=0x02, ReadCmdLine=0x04, ReadProFile=0x08,
12087 ReadPostFiles=0x10, ReadFeatures=0x20, ReadConfigs=0x40, ReadAll=0xFF };
12088 inline bool parse(const QString &text) { return parse(text, vars); }
12089 bool read(const QString &project, uchar cmd=ReadAll);
12090 bool read(uchar cmd=ReadAll);
12092 QStringList userExpandFunctions() { return replaceFunctions.keys(); }
12093 QStringList userTestFunctions() { return testFunctions.keys(); }
12095 QString projectFile();
12096 QString configFile();
12097 inline QMakeProperty *properties() { return prop; }
12099 bool doProjectTest(QString str, QMap<QString, QStringList> &place);
12100 bool doProjectTest(QString func, const QString ¶ms,
12101 QMap<QString, QStringList> &place);
12102 bool doProjectTest(QString func, QStringList args,
12103 QMap<QString, QStringList> &place);
12104 bool doProjectTest(QString func, QList<QStringList> args,
12105 QMap<QString, QStringList> &place);
12106 QStringList doProjectExpand(QString func, const QString ¶ms,
12107 QMap<QString, QStringList> &place);
12108 QStringList doProjectExpand(QString func, QStringList args,
12109 QMap<QString, QStringList> &place);
12110 QStringList doProjectExpand(QString func, QList<QStringList> args,
12111 QMap<QString, QStringList> &place);
12113 QStringList expand(const QString &v);
12114 QStringList expand(const QString &func, const QList<QStringList> &args);
12115 bool test(const QString &v);
12116 bool test(const QString &func, const QList<QStringList> &args);
12117 bool isActiveConfig(const QString &x, bool regex=false,
12118 QMap<QString, QStringList> *place=__null);
12120 bool isSet(const QString &v);
12121 bool isEmpty(const QString &v);
12122 QStringList &values(const QString &v);
12123 QString first(const QString &v);
12124 QMap<QString, QStringList> &variables();
12127 friend class MakefileGenerator;
12128 bool read(const QString &file, QMap<QString, QStringList> &place);
12129 bool read(QTextStream &file, QMap<QString, QStringList> &place);
12132 template <> struct QMetaTypeId< QMakeProject* > { enum { Defined = 1 }; static int qt_metatype_id() { static QBasicAtomic metatype_id = { (0) }; if (!metatype_id) metatype_id = qRegisterMetaType< QMakeProject* >("QMakeProject*"); return metatype_id; } };
12134 inline QString QMakeProject::projectFile()
12137 return QString("(stdin)");
12141 inline QString QMakeProject::configFile()
12144 inline QStringList &QMakeProject::values(const QString &v)
12145 { return values(v, vars); }
12147 inline bool QMakeProject::isEmpty(const QString &v)
12148 { return !isSet(v) || values(v).isEmpty(); }
12150 inline bool QMakeProject::isSet(const QString &v)
12151 { return vars.contains(v); }
12153 inline QString QMakeProject::first(const QString &v)
12155 const QStringList vals = values(v);
12157 return QString("");
12158 return vals.first();
12161 inline QMap<QString, QStringList> &QMakeProject::variables()
12163 # 43 "./option.h" 2
12164 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
12165 # 44 "./option.h" 2
12166 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstringlist.h" 1
12167 # 45 "./option.h" 2
12168 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qfile.h" 1
12169 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfile.h" 1
12170 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfile.h"
12171 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qiodevice.h" 1
12172 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfile.h" 2
12173 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
12174 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfile.h" 2
12175 # 1 "/usr/include/stdio.h" 1 3 4
12176 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfile.h" 2
12184 typedef QtValidLicenseForCoreModule QtCoreModule;
12186 class QAbstractFileEngine;
12187 class QFilePrivate;
12189 class QFile : public QIODevice
12194 inline QFilePrivate* d_func() { return reinterpret_cast<QFilePrivate *>(d_ptr); } inline const QFilePrivate* d_func() const { return reinterpret_cast<const QFilePrivate *>(d_ptr); } friend class QFilePrivate;
12207 UnspecifiedError = 8,
12210 PositionError = 11,
12212 PermissionsError = 13,
12220 ReadOwner = 0x4000, WriteOwner = 0x2000, ExeOwner = 0x1000,
12221 ReadUser = 0x0400, WriteUser = 0x0200, ExeUser = 0x0100,
12222 ReadGroup = 0x0040, WriteGroup = 0x0020, ExeGroup = 0x0010,
12223 ReadOther = 0x0004, WriteOther = 0x0002, ExeOther = 0x0001
12225 typedef QFlags<Permission> Permissions;
12228 QFile(const QString &name);
12235 FileError error() const;
12238 QString fileName() const;
12239 void setFileName(const QString &name);
12241 typedef QByteArray (*EncoderFn)(const QString &fileName);
12242 typedef QString (*DecoderFn)(const QByteArray &localfileName);
12243 static QByteArray encodeName(const QString &fileName);
12244 static QString decodeName(const QByteArray &localFileName);
12245 inline static QString decodeName(const char *localFileName)
12246 { return decodeName(QByteArray(localFileName)); };
12247 static void setEncodingFunction(EncoderFn);
12248 static void setDecodingFunction(DecoderFn);
12250 bool exists() const;
12251 static bool exists(const QString &fileName);
12253 QString readLink() const;
12254 static QString readLink(const QString &fileName);
12255 inline QString symLinkTarget() const { return readLink(); }
12256 inline static QString symLinkTarget(const QString &fileName) { return readLink(fileName); }
12259 static bool remove(const QString &fileName);
12261 bool rename(const QString &newName);
12262 static bool rename(const QString &oldName, const QString &newName);
12264 bool link(const QString &newName);
12265 static bool link(const QString &oldname, const QString &newName);
12267 bool copy(const QString &newName);
12268 static bool copy(const QString &fileName, const QString &newName);
12270 bool isSequential() const;
12272 bool open(OpenMode flags);
12273 bool open(FILE *f, OpenMode flags);
12274 bool open(int fd, OpenMode flags);
12275 virtual void close();
12277 qint64 size() const;
12278 qint64 pos() const;
12279 bool seek(qint64 offset);
12280 bool atEnd() const;
12283 bool resize(qint64 sz);
12284 static bool resize(const QString &filename, qint64 sz);
12286 Permissions permissions() const;
12287 static Permissions permissions(const QString &filename);
12288 bool setPermissions(Permissions permissionSpec);
12289 static bool setPermissions(const QString &filename, Permissions permissionSpec);
12291 int handle() const;
12293 virtual QAbstractFileEngine *fileEngine() const;
12294 # 171 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfile.h"
12297 QFile(QFilePrivate &dd);
12302 qint64 readData(char *data, qint64 maxlen);
12303 qint64 writeData(const char *data, qint64 len);
12304 qint64 readLineData(char *data, qint64 maxlen);
12307 QFile(const QFile &); QFile &operator=(const QFile &);
12310 inline QFlags<QFile::Permissions::enum_type> operator|(QFile::Permissions::enum_type f1, QFile::Permissions::enum_type f2) { return QFlags<QFile::Permissions::enum_type>(f1) | f2; } inline QFlags<QFile::Permissions::enum_type> operator|(QFile::Permissions::enum_type f1, QFlags<QFile::Permissions::enum_type> f2) { return f2 | f1; }
12313 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qfile.h" 2
12314 # 46 "./option.h" 2
12319 const char *qmake_version();
12321 QString qmake_getpwd();
12322 bool qmake_setpwd(const QString &p);
12325 void debug_msg_internal(int level, const char *fmt, ...);
12332 void warn_msg(QMakeWarn t, const char *fmt, ...);
12337 static QString js_ext;
12338 static QString libtool_ext;
12339 static QString pkgcfg_ext;
12340 static QString prf_ext;
12341 static QString prl_ext;
12342 static QString ui_ext;
12343 static QStringList h_ext;
12344 static QStringList cpp_ext;
12345 static QStringList c_ext;
12346 static QString h_moc_ext;
12347 static QString cpp_moc_ext;
12348 static QString obj_ext;
12349 static QString lex_ext;
12350 static QString yacc_ext;
12351 static QString h_moc_mod;
12352 static QString cpp_moc_mod;
12353 static QString lex_mod;
12354 static QString yacc_mod;
12355 static QString dir_sep;
12356 static QString dirlist_sep;
12357 static QString sysenv_mod;
12358 static QString pro_ext;
12359 static QString res_ext;
12360 static char field_sep;
12361 static const char *application_argv0;
12363 enum CmdLineFlags {
12364 QMAKE_CMDLINE_SUCCESS = 0x00,
12365 QMAKE_CMDLINE_SHOW_USAGE = 0x01,
12366 QMAKE_CMDLINE_BAIL = 0x02,
12367 QMAKE_CMDLINE_ERROR = 0x04
12371 static int init(int argc=0, char **argv=0);
12372 static bool postProcessProject(QMakeProject *);
12374 enum StringFixFlags {
12377 FixPathCanonicalize = 0x02,
12378 FixPathToLocalSeparators = 0x04,
12379 FixPathToTargetSeparators = 0x08
12381 static QString fixString(QString string, uchar flags);
12384 inline static QString fixPathToLocalOS(const QString &in, bool fix_env=true, bool canonical=true)
12386 uchar flags = FixPathToLocalSeparators;
12388 flags |= FixEnvVars;
12390 flags |= FixPathCanonicalize;
12391 return fixString(in, flags);
12393 inline static QString fixPathToTargetOS(const QString &in, bool fix_env=true, bool canonical=true)
12395 uchar flags = FixPathToTargetSeparators;
12397 flags |= FixEnvVars;
12399 flags |= FixPathCanonicalize;
12400 return fixString(in, flags);
12404 enum QMAKE_MODE { QMAKE_GENERATE_NOTHING, QMAKE_GENERATE_PROJECT, QMAKE_GENERATE_MAKEFILE,
12405 QMAKE_GENERATE_PRL, QMAKE_SET_PROPERTY, QMAKE_QUERY_PROPERTY };
12406 static QMAKE_MODE qmake_mode;
12409 static QString qmake_abslocation;
12410 static QFile output;
12411 static QString output_dir;
12412 static int debug_level;
12413 static int warn_level;
12414 static bool recursive;
12415 static QStringList before_user_vars, after_user_vars, user_configs, after_user_configs;
12416 enum TARG_MODE { TARG_UNIX_MODE, TARG_WIN_MODE, TARG_MACX_MODE, TARG_MAC9_MODE, TARG_QNX6_MODE };
12417 static TARG_MODE target_mode;
12418 static QString user_template, user_template_prefix;
12419 static QStringList shellPath;
12423 static QStringList properties;
12428 static bool do_pwd;
12429 static QStringList project_dirs;
12434 static QString qmakespec;
12435 static bool do_cache;
12436 static bool do_deps;
12437 static bool do_mocs;
12438 static bool do_dep_heuristics;
12439 static bool do_preprocess;
12440 static bool do_stub_makefile;
12441 static QString cachefile;
12442 static int cachefile_depth;
12443 static QStringList project_files;
12444 static QString qmakespec_commandline;
12448 static int parseCommandLine(int, char **, int=0);
12451 inline QString fixEnvVariables(const QString &x) { return Option::fixString(x, Option::FixEnvVars); }
12452 inline QStringList splitPathList(const QString paths) { return paths.split(Option::dirlist_sep); }
12459 enum LibraryLocation
12473 static QString location(LibraryLocation);
12475 # 43 "generators/makefile.h" 2
12476 # 1 "./project.h" 1
12477 # 44 "generators/makefile.h" 2
12478 # 1 "generators/makefiledeps.h" 1
12479 # 42 "generators/makefiledeps.h"
12480 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstringlist.h" 1
12481 # 43 "generators/makefiledeps.h" 2
12482 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qfileinfo.h" 1
12483 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfileinfo.h" 1
12484 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfileinfo.h"
12485 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qfile.h" 1
12486 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfileinfo.h" 2
12487 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qlist.h" 1
12488 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfileinfo.h" 2
12492 typedef QtValidLicenseForCoreModule QtCoreModule;
12496 class QFileInfoPrivate;
12502 QFileInfo(const QString &file);
12503 QFileInfo(const QFile &file);
12504 QFileInfo(const QDir &dir, const QString &file);
12505 QFileInfo(const QFileInfo &fileinfo);
12508 QFileInfo &operator=(const QFileInfo &fileinfo);
12509 bool operator==(const QFileInfo &fileinfo);
12510 bool operator==(const QFileInfo &fileinfo) const;
12511 inline bool operator!=(const QFileInfo &fileinfo) { return !(operator==(fileinfo)); }
12512 inline bool operator!=(const QFileInfo &fileinfo) const { return !(operator==(fileinfo)); }
12514 void setFile(const QString &file);
12515 void setFile(const QFile &file);
12516 void setFile(const QDir &dir, const QString &file);
12517 bool exists() const;
12520 QString filePath() const;
12521 QString absoluteFilePath() const;
12522 QString canonicalFilePath() const;
12523 QString fileName() const;
12524 QString baseName() const;
12525 QString completeBaseName() const;
12526 QString suffix() const;
12527 QString bundleName() const;
12528 QString completeSuffix() const;
12530 QString path() const;
12531 QString absolutePath() const;
12532 QString canonicalPath() const;
12534 QDir absoluteDir() const;
12536 bool isReadable() const;
12537 bool isWritable() const;
12538 bool isExecutable() const;
12539 bool isHidden() const;
12541 bool isRelative() const;
12542 inline bool isAbsolute() const { return !isRelative(); }
12543 bool makeAbsolute();
12545 bool isFile() const;
12546 bool isDir() const;
12547 bool isSymLink() const;
12548 bool isRoot() const;
12549 bool isBundle() const;
12551 QString readLink() const;
12552 inline QString symLinkTarget() const { return readLink(); }
12554 QString owner() const;
12555 uint ownerId() const;
12556 QString group() const;
12557 uint groupId() const;
12559 bool permission(QFile::Permissions permissions) const;
12560 QFile::Permissions permissions() const;
12562 qint64 size() const;
12564 QDateTime created() const;
12565 QDateTime lastModified() const;
12566 QDateTime lastRead() const;
12570 bool caching() const;
12571 void setCaching(bool on);
12572 # 162 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qfileinfo.h"
12574 QFileInfoPrivate *d_ptr;
12576 inline QFileInfoPrivate* d_func() { return reinterpret_cast<QFileInfoPrivate *>(d_ptr); } inline const QFileInfoPrivate* d_func() const { return reinterpret_cast<const QFileInfoPrivate *>(d_ptr); } friend class QFileInfoPrivate;
12578 template <> class QTypeInfo<QFileInfo> { public: enum { isComplex = (((Q_MOVABLE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(QFileInfo)>sizeof(void*)), isPointer = false, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "QFileInfo"; } };
12584 typedef QList<QFileInfo> QFileInfoList;
12590 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qfileinfo.h" 2
12591 # 44 "generators/makefiledeps.h" 2
12594 struct SourceDependChildren;
12597 class QMakeLocalFileName {
12599 mutable QString real_name, local_name;
12601 QMakeLocalFileName() : is_null(1) { }
12602 QMakeLocalFileName(const QString &);
12603 bool isNull() const { return is_null; }
12604 inline const QString &real() const { return real_name; }
12605 const QString &local() const;
12607 bool operator==(const QMakeLocalFileName &other) {
12608 return (this->real_name == other.real_name);
12610 bool operator!=(const QMakeLocalFileName &other) {
12611 return !(*this == other);
12615 class QMakeSourceFileInfo
12619 SourceFiles *files, *includes;
12620 bool files_changed;
12621 QList<QMakeLocalFileName> depdirs;
12624 char *spare_buffer;
12625 int spare_buffer_size;
12626 char *getBuffer(int s);
12629 bool findMocs(SourceFile *);
12630 bool findDeps(SourceFile *);
12631 void dependTreeWalker(SourceFile *, SourceDependChildren *);
12637 virtual QMakeLocalFileName fixPathForFile(const QMakeLocalFileName &, bool forOpen=false);
12638 virtual QMakeLocalFileName findFileForDep(const QMakeLocalFileName &, const QMakeLocalFileName &);
12639 virtual QFileInfo findFileInfo(const QMakeLocalFileName &);
12642 QMakeSourceFileInfo(const QString &cachefile="");
12643 virtual ~QMakeSourceFileInfo();
12645 QList<QMakeLocalFileName> dependencyPaths() const { return depdirs; }
12646 void setDependencyPaths(const QList<QMakeLocalFileName> &);
12648 enum DependencyMode { Recursive, NonRecursive };
12649 inline void setDependencyMode(DependencyMode mode) { dep_mode = mode; }
12650 inline DependencyMode dependencyMode() const { return dep_mode; }
12652 enum SourceFileType { TYPE_UNKNOWN, TYPE_C, TYPE_UI, TYPE_QRC };
12653 enum SourceFileSeek { SEEK_DEPS=0x01, SEEK_MOCS=0x02 };
12654 void addSourceFiles(const QStringList &, uchar seek, SourceFileType type=TYPE_C);
12655 void addSourceFile(const QString &, uchar seek, SourceFileType type=TYPE_C);
12656 bool containsSourceFile(const QString &, SourceFileType type=TYPE_C);
12658 int included(const QString &file);
12659 QStringList dependencies(const QString &file);
12661 bool mocable(const QString &file);
12663 virtual QMap<QString, QStringList> getCacheVerification();
12664 virtual bool verifyCache(const QMap<QString, QStringList> &);
12665 void setCacheFile(const QString &cachefile);
12666 void loadCache(const QString &cf);
12667 void saveCache(const QString &cf);
12670 DependencyMode dep_mode;
12672 # 45 "generators/makefile.h" 2
12673 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qtextstream.h" 1
12674 # 46 "generators/makefile.h" 2
12675 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qlist.h" 1
12676 # 47 "generators/makefile.h" 2
12677 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qhash.h" 1
12678 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h" 1
12679 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h"
12680 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qatomic.h" 1
12681 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h" 2
12682 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qchar.h" 1
12683 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h" 2
12684 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qiterator.h" 1
12685 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h" 2
12686 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qlist.h" 1
12687 # 46 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h" 2
12688 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qpair.h" 1
12689 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qpair.h" 1
12690 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qpair.h"
12691 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qdatastream.h" 1
12692 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qpair.h" 2
12696 typedef QtValidLicenseForCoreModule QtCoreModule;
12698 template <class T1, class T2>
12701 typedef T1 first_type;
12702 typedef T2 second_type;
12704 QPair() : first(T1()), second(T2()) {}
12705 QPair(const T1 &t1, const T2 &t2) : first(t1), second(t2) {}
12707 QPair<T1, T2> &operator=(const QPair<T1, T2> &other)
12708 { first = other.first; second = other.second; return *this; }
12714 template <class T1, class T2>
12715 inline bool operator==(const QPair<T1, T2> &p1, const QPair<T1, T2> &p2)
12716 { return p1.first == p2.first && p1.second == p2.second; }
12718 template <class T1, class T2>
12719 inline bool operator!=(const QPair<T1, T2> &p1, const QPair<T1, T2> &p2)
12720 { return !(p1 == p2); }
12722 template <class T1, class T2>
12723 inline bool operator<(const QPair<T1, T2> &p1, const QPair<T1, T2> &p2)
12725 return p1.first < p2.first || (!(p2.first < p1.first) && p1.second < p2.second);
12728 template <class T1, class T2>
12729 inline bool operator>(const QPair<T1, T2> &p1, const QPair<T1, T2> &p2)
12734 template <class T1, class T2>
12735 inline bool operator<=(const QPair<T1, T2> &p1, const QPair<T1, T2> &p2)
12740 template <class T1, class T2>
12741 inline bool operator>=(const QPair<T1, T2> &p1, const QPair<T1, T2> &p2)
12746 template <class T1, class T2>
12747 QPair<T1, T2> qMakePair(const T1 &x, const T2 &y)
12749 return QPair<T1, T2>(x, y);
12753 template <class T1, class T2>
12754 inline QDataStream& operator>>(QDataStream& s, QPair<T1, T2>& p)
12756 s >> p.first >> p.second;
12760 template <class T1, class T2>
12761 inline QDataStream& operator<<(QDataStream& s, const QPair<T1, T2>& p)
12763 s << p.first << p.second;
12769 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qpair.h" 2
12770 # 47 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h" 2
12775 typedef QtValidLicenseForCoreModule QtCoreModule;
12782 inline uint qHash(char key) { return uint(key); }
12783 inline uint qHash(uchar key) { return uint(key); }
12784 inline uint qHash(signed char key) { return uint(key); }
12785 inline uint qHash(ushort key) { return uint(key); }
12786 inline uint qHash(short key) { return uint(key); }
12787 inline uint qHash(uint key) { return key; }
12788 inline uint qHash(int key) { return uint(key); }
12789 inline uint qHash(ulong key)
12791 if (sizeof(ulong) > sizeof(uint)) {
12792 return uint((key >> (8 * sizeof(uint) - 1)) ^ key);
12797 inline uint qHash(long key) { return qHash(ulong(key)); }
12798 inline uint qHash(quint64 key)
12800 if (sizeof(quint64) > sizeof(uint)) {
12801 return uint((key >> (8 * sizeof(uint) - 1)) ^ key);
12806 inline uint qHash(qint64 key) { return qHash(quint64(key)); }
12807 inline uint qHash(QChar key) { return qHash(key.unicode()); }
12808 uint qHash(const QByteArray &key);
12809 uint qHash(const QString &key);
12810 uint qHash(const QStringRef &key);
12811 uint qHash(const QBitArray &key);
12817 template <class T> inline uint qHash(const T *key)
12819 if (sizeof(const T *) > sizeof(uint))
12820 return qHash(reinterpret_cast<quint64>(key));
12822 return uint(reinterpret_cast<ulong>(key));
12828 template <typename T1, typename T2> inline uint qHash(const QPair<T1, T2> &key)
12830 uint h1 = qHash(key.first);
12831 uint h2 = qHash(key.second);
12832 return ((h1 << 16) | (h1 >> 16)) ^ h2;
12852 void *allocateNode();
12853 void freeNode(void *node);
12854 QHashData *detach_helper(void (*node_duplicate)(Node *, void *), int nodeSize);
12857 void rehash(int hint);
12858 void destroyAndFree();
12864 static Node *nextNode(Node *node);
12865 static Node *previousNode(Node *node);
12867 static QHashData shared_null;
12870 inline void QHashData::mightGrow()
12872 if (size >= numBuckets)
12873 rehash(numBits + 1);
12876 inline void QHashData::hasShrunk()
12878 if (size <= (numBuckets >> 3) && numBits > userNumBits)
12879 rehash(qMax(int(numBits) - 2, int(userNumBits)));
12882 inline QHashData::Node *QHashData::firstNode()
12884 Node *e = reinterpret_cast<Node *>(this);
12885 Node **bucket = buckets;
12886 int n = numBuckets;
12895 struct QHashDummyValue
12899 inline bool operator==(const QHashDummyValue & , const QHashDummyValue & )
12904 template <> class QTypeInfo<QHashDummyValue> { public: enum { isComplex = (((Q_MOVABLE_TYPE | Q_DUMMY_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE | Q_DUMMY_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(QHashDummyValue)>sizeof(void*)), isPointer = false, isDummy = (((Q_MOVABLE_TYPE | Q_DUMMY_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "QHashDummyValue"; } };
12906 template <class Key, class T>
12907 struct QHashDummyNode
12909 QHashDummyNode *next;
12913 inline QHashDummyNode(const Key &key0) : key(key0) {}
12916 template <class Key, class T>
12924 inline QHashNode(const Key &key0) : key(key0) {}
12925 inline QHashNode(const Key &key0, const T &value0) : key(key0), value(value0) {}
12926 inline bool same_key(uint h0, const Key &key0) { return h0 == h && key0 == key; }
12928 # 230 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h"
12929 template <class T> struct QHashDummyNode<int, T> { QHashDummyNode *next; union { uint h; int key; }; inline QHashDummyNode(int ) {} }; template <class T> struct QHashNode<int, T> { QHashNode *next; union { uint h; int key; }; T value; inline QHashNode(int ) {} inline QHashNode(int , const T &value0) : value(value0) {} inline bool same_key(uint h0, int) { return h0 == h; } };
12930 template <class T> struct QHashDummyNode<uint, T> { QHashDummyNode *next; union { uint h; uint key; }; inline QHashDummyNode(uint ) {} }; template <class T> struct QHashNode<uint, T> { QHashNode *next; union { uint h; uint key; }; T value; inline QHashNode(uint ) {} inline QHashNode(uint , const T &value0) : value(value0) {} inline bool same_key(uint h0, uint) { return h0 == h; } };
12934 template <class Key, class T>
12937 typedef QHashDummyNode<Key, T> DummyNode;
12938 typedef QHashNode<Key, T> Node;
12942 QHashNode<Key, T> *e;
12945 static inline Node *concrete(QHashData::Node *node) {
12946 return reinterpret_cast<Node *>(node);
12950 inline QHash() : d(&QHashData::shared_null) { d->ref.ref(); }
12951 inline QHash(const QHash<Key, T> &other) : d(other.d) { d->ref.ref(); if (!d->sharable) detach(); }
12952 inline ~QHash() { if (!d->ref.deref()) freeData(d); }
12954 QHash<Key, T> &operator=(const QHash<Key, T> &other);
12956 bool operator==(const QHash<Key, T> &other) const;
12957 inline bool operator!=(const QHash<Key, T> &other) const { return !(*this == other); }
12959 inline int size() const { return d->size; }
12961 inline bool isEmpty() const { return d->size == 0; }
12963 inline int capacity() const { return d->numBuckets; }
12964 void reserve(int size);
12965 inline void squeeze() { reserve(1); }
12967 inline void detach() { if (d->ref != 1) detach_helper(); }
12968 inline bool isDetached() const { return d->ref == 1; }
12969 inline void setSharable(bool sharable) { if (!sharable) detach(); d->sharable = sharable; }
12973 int remove(const Key &key);
12974 T take(const Key &key);
12976 bool contains(const Key &key) const;
12977 const Key key(const T &value) const;
12978 const Key key(const T &value, const Key &defaultKey) const;
12979 const T value(const Key &key) const;
12980 const T value(const Key &key, const T &defaultValue) const;
12981 T &operator[](const Key &key);
12982 const T operator[](const Key &key) const;
12984 QList<Key> uniqueKeys() const;
12985 QList<Key> keys() const;
12986 QList<Key> keys(const T &value) const;
12987 QList<T> values() const;
12988 QList<T> values(const Key &key) const;
12989 int count(const Key &key) const;
12991 class const_iterator;
12995 QHashData::Node *i;
12998 typedef std::bidirectional_iterator_tag iterator_category;
12999 typedef ptrdiff_t difference_type;
13000 typedef T value_type;
13001 typedef T *pointer;
13002 typedef T &reference;
13005 inline operator Node *() const { return concrete(i); }
13006 inline iterator() : i(0) { }
13007 explicit inline iterator(void *node) : i(reinterpret_cast<QHashData::Node *>(node)) { }
13009 inline const Key &key() const { return concrete(i)->key; }
13010 inline T &value() const { return concrete(i)->value; }
13011 inline T &operator*() const { return concrete(i)->value; }
13012 inline T *operator->() const { return &concrete(i)->value; }
13013 inline bool operator==(const iterator &o) const { return i == o.i; }
13014 inline bool operator!=(const iterator &o) const { return i != o.i; }
13016 inline iterator &operator++() {
13017 i = QHashData::nextNode(i);
13020 inline iterator operator++(int) {
13021 iterator r = *this;
13022 i = QHashData::nextNode(i);
13025 inline iterator &operator--() {
13026 i = QHashData::previousNode(i);
13029 inline iterator operator--(int) {
13030 iterator r = *this;
13031 i = QHashData::previousNode(i);
13034 inline iterator operator+(int j) const
13035 { iterator r = *this; if (j > 0) while (j--) ++r; else while (j++) --r; return r; }
13036 inline iterator operator-(int j) const { return operator+(-j); }
13037 inline iterator &operator+=(int j) { return *this = *this + j; }
13038 inline iterator &operator-=(int j) { return *this = *this - j; }
13046 inline bool operator==(const const_iterator &o) const
13047 { return i == reinterpret_cast<const iterator &>(o).i; }
13048 inline bool operator!=(const const_iterator &o) const
13049 { return i != reinterpret_cast<const iterator &>(o).i; }
13053 inline operator bool() const { return false; }
13055 friend class iterator;
13057 class const_iterator
13059 QHashData::Node *i;
13062 typedef std::bidirectional_iterator_tag iterator_category;
13063 typedef ptrdiff_t difference_type;
13064 typedef T value_type;
13065 typedef const T *pointer;
13066 typedef const T &reference;
13069 inline operator Node *() const { return concrete(i); }
13070 inline const_iterator() : i(0) { }
13071 explicit inline const_iterator(void *node)
13072 : i(reinterpret_cast<QHashData::Node *>(node)) { }
13076 inline const_iterator(const iterator &o)
13078 { i = reinterpret_cast<const const_iterator &>(o).i; }
13080 inline const Key &key() const { return concrete(i)->key; }
13081 inline const T &value() const { return concrete(i)->value; }
13082 inline const T &operator*() const { return concrete(i)->value; }
13083 inline const T *operator->() const { return &concrete(i)->value; }
13084 inline bool operator==(const const_iterator &o) const { return i == o.i; }
13085 inline bool operator!=(const const_iterator &o) const { return i != o.i; }
13087 inline const_iterator &operator++() {
13088 i = QHashData::nextNode(i);
13091 inline const_iterator operator++(int) {
13092 const_iterator r = *this;
13093 i = QHashData::nextNode(i);
13096 inline const_iterator &operator--() {
13097 i = QHashData::previousNode(i);
13100 inline const_iterator operator--(int) {
13101 const_iterator r = *this;
13102 i = QHashData::previousNode(i);
13105 inline const_iterator operator+(int j) const
13106 { const_iterator r = *this; if (j > 0) while (j--) ++r; else while (j++) --r; return r; }
13107 inline const_iterator operator-(int j) const { return operator+(-j); }
13108 inline const_iterator &operator+=(int j) { return *this = *this + j; }
13109 inline const_iterator &operator-=(int j) { return *this = *this - j; }
13110 # 419 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h"
13113 inline operator bool() const { return false; }
13115 friend class const_iterator;
13118 inline iterator begin() { detach(); return iterator(d->firstNode()); }
13119 inline const_iterator begin() const { return const_iterator(d->firstNode()); }
13120 inline const_iterator constBegin() const { return const_iterator(d->firstNode()); }
13121 inline iterator end() { detach(); return iterator(e); }
13122 inline const_iterator end() const { return const_iterator(e); }
13123 inline const_iterator constEnd() const { return const_iterator(e); }
13124 iterator erase(iterator it);
13127 typedef iterator Iterator;
13128 typedef const_iterator ConstIterator;
13129 inline int count() const { return d->size; }
13130 iterator find(const Key &key);
13131 const_iterator find(const Key &key) const;
13132 const_iterator constFind(const Key &key) const;
13133 iterator insert(const Key &key, const T &value);
13134 iterator insertMulti(const Key &key, const T &value);
13135 QHash<Key, T> &unite(const QHash<Key, T> &other);
13138 typedef T mapped_type;
13139 typedef Key key_type;
13140 typedef ptrdiff_t difference_type;
13141 typedef int size_type;
13143 inline bool empty() const { return isEmpty(); }
13151 void detach_helper();
13152 void freeData(QHashData *d);
13153 Node **findNode(const Key &key, uint *hp = 0) const;
13154 Node *createNode(uint h, const Key &key, const T &value, Node **nextNode);
13155 void deleteNode(Node *node);
13157 static void duplicateNode(QHashData::Node *originalNode, void *newNode);
13160 template <class Key, class T>
13161 inline void QHash<Key, T>::deleteNode(Node *node)
13173 template <class Key, class T>
13174 inline void QHash<Key, T>::duplicateNode(QHashData::Node *node, void *newNode)
13176 Node *concreteNode = concrete(node);
13177 if (QTypeInfo<T>::isDummy) {
13178 (void) new (newNode) DummyNode(concreteNode->key);
13180 (void) new (newNode) Node(concreteNode->key, concreteNode->value);
13184 template <class Key, class T>
13185 inline typename QHash<Key, T>::Node *
13186 QHash<Key, T>::createNode(uint ah, const Key &akey, const T &avalue, Node **anextNode)
13190 if (QTypeInfo<T>::isDummy) {
13191 node = reinterpret_cast<Node *>(new (d->allocateNode()) DummyNode(akey));
13193 node = new (d->allocateNode()) Node(akey, avalue);
13197 node->next = *anextNode;
13203 template <class Key, class T>
13204 inline QHash<Key, T> &QHash<Key, T>::unite(const QHash<Key, T> &other)
13206 QHash<Key, T> copy(other);
13207 const_iterator it = copy.constEnd();
13208 while (it != copy.constBegin()) {
13210 insertMulti(it.key(), it.value());
13215 template <class Key, class T>
13216 void QHash<Key, T>::freeData(QHashData *x)
13218 Node *e_for_x = reinterpret_cast<Node *>(x);
13219 Node **bucket = reinterpret_cast<Node **>(x->buckets);
13220 int n = x->numBuckets;
13222 Node *cur = *bucket++;
13223 while (cur != e_for_x) {
13224 Node *next = cur->next;
13229 x->destroyAndFree();
13232 template <class Key, class T>
13233 inline void QHash<Key, T>::clear()
13235 *this = QHash<Key,T>();
13238 template <class Key, class T>
13239 void QHash<Key, T>::detach_helper()
13241 QHashData *x = d->detach_helper(duplicateNode,
13242 QTypeInfo<T>::isDummy ? sizeof(DummyNode) : sizeof(Node));
13243 x = qAtomicSetPtr(&d, x);
13244 if (!x->ref.deref())
13248 template <class Key, class T>
13249 inline QHash<Key, T> &QHash<Key, T>::operator=(const QHash<Key, T> &other)
13251 if (d != other.d) {
13252 QHashData *x = other.d;
13254 x = qAtomicSetPtr(&d, x);
13255 if (!x->ref.deref())
13263 template <class Key, class T>
13264 inline const T QHash<Key, T>::value(const Key &akey) const
13267 if (d->size == 0 || (node = *findNode(akey)) == e) {
13270 return node->value;
13274 template <class Key, class T>
13275 inline const T QHash<Key, T>::value(const Key &akey, const T &adefaultValue) const
13278 if (d->size == 0 || (node = *findNode(akey)) == e) {
13279 return adefaultValue;
13281 return node->value;
13285 template <class Key, class T>
13286 QList<Key> QHash<Key, T>::uniqueKeys() const
13289 const_iterator i = begin();
13292 const Key &aKey = i.key();
13296 goto break_out_of_outer_loop;
13297 } while (aKey == i.key());
13300 break_out_of_outer_loop:
13304 template <class Key, class T>
13305 QList<Key> QHash<Key, T>::keys() const
13308 const_iterator i = begin();
13309 while (i != end()) {
13310 res.append(i.key());
13316 template <class Key, class T>
13317 QList<Key> QHash<Key, T>::keys(const T &avalue) const
13320 const_iterator i = begin();
13321 while (i != end()) {
13322 if (i.value() == avalue)
13323 res.append(i.key());
13329 template <class Key, class T>
13330 const Key QHash<Key, T>::key(const T &avalue) const
13332 return key(avalue, Key());
13335 template <class Key, class T>
13336 const Key QHash<Key, T>::key(const T &avalue, const Key &defaultValue) const
13338 const_iterator i = begin();
13339 while (i != end()) {
13340 if (i.value() == avalue)
13345 return defaultValue;
13348 template <class Key, class T>
13349 QList<T> QHash<Key, T>::values() const
13352 const_iterator i = begin();
13353 while (i != end()) {
13354 res.append(i.value());
13360 template <class Key, class T>
13361 QList<T> QHash<Key, T>::values(const Key &akey) const
13364 Node *node = *findNode(akey);
13367 res.append(node->value);
13368 } while ((node = node->next) != e && node->key == akey);
13373 template <class Key, class T>
13374 int QHash<Key, T>::count(const Key &akey) const
13377 Node *node = *findNode(akey);
13381 } while ((node = node->next) != e && node->key == akey);
13386 template <class Key, class T>
13387 inline const T QHash<Key, T>::operator[](const Key &akey) const
13389 return value(akey);
13392 template <class Key, class T>
13393 inline T &QHash<Key, T>::operator[](const Key &akey)
13399 Node **node = findNode(akey, &h);
13401 return createNode(h, akey, T(), node)->value;
13402 return (*node)->value;
13405 template <class Key, class T>
13406 inline typename QHash<Key, T>::iterator QHash<Key, T>::insert(const Key &akey,
13413 Node **node = findNode(akey, &h);
13415 return iterator(createNode(h, akey, avalue, node));
13417 if (!QTypeInfo<T>::isDummy)
13418 (*node)->value = avalue;
13419 return iterator(*node);
13422 template <class Key, class T>
13423 inline typename QHash<Key, T>::iterator QHash<Key, T>::insertMulti(const Key &akey,
13430 Node **nextNode = findNode(akey, &h);
13431 return iterator(createNode(h, akey, avalue, nextNode));
13434 template <class Key, class T>
13435 int QHash<Key, T>::remove(const Key &akey)
13439 int oldSize = d->size;
13440 Node **node = findNode(akey);
13442 bool deleteNext = true;
13444 Node *next = (*node)->next;
13445 deleteNext = (next != e && next->key == (*node)->key);
13449 } while (deleteNext);
13452 return oldSize - d->size;
13455 template <class Key, class T>
13456 T QHash<Key, T>::take(const Key &akey)
13460 Node **node = findNode(akey);
13462 T t = (*node)->value;
13463 Node *next = (*node)->next;
13473 template <class Key, class T>
13474 typename QHash<Key, T>::iterator QHash<Key, T>::erase(iterator it)
13476 if (it == iterator(e))
13483 Node **node_ptr = reinterpret_cast<Node **>(&d->buckets[node->h % d->numBuckets]);
13484 while (*node_ptr != node)
13485 node_ptr = &(*node_ptr)->next;
13486 *node_ptr = node->next;
13492 template <class Key, class T>
13493 inline void QHash<Key, T>::reserve(int asize)
13496 d->rehash(-qMax(asize, 1));
13499 template <class Key, class T>
13500 inline typename QHash<Key, T>::const_iterator QHash<Key, T>::find(const Key &akey) const
13502 return const_iterator(*findNode(akey));
13505 template <class Key, class T>
13506 inline typename QHash<Key, T>::const_iterator QHash<Key, T>::constFind(const Key &akey) const
13508 return const_iterator(*findNode(akey));
13511 template <class Key, class T>
13512 inline typename QHash<Key, T>::iterator QHash<Key, T>::find(const Key &akey)
13515 return iterator(*findNode(akey));
13518 template <class Key, class T>
13519 inline bool QHash<Key, T>::contains(const Key &akey) const
13521 return *findNode(akey) != e;
13524 template <class Key, class T>
13525 typename QHash<Key, T>::Node **QHash<Key, T>::findNode(const Key &akey,
13529 uint h = qHash(akey);
13531 if (d->numBuckets) {
13532 node = reinterpret_cast<Node **>(&d->buckets[h % d->numBuckets]);
13533 do {if(!(*node == e || (*node)->next))qt_assert("*node == e || (*node)->next","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h",841);} while (0);
13534 while (*node != e && !(*node)->same_key(h, akey))
13535 node = &(*node)->next;
13537 node = const_cast<Node **>(reinterpret_cast<const Node * const *>(&e));
13544 template <class Key, class T>
13545 bool QHash<Key, T>::operator==(const QHash<Key, T> &other) const
13547 if (size() != other.size())
13552 const_iterator it = begin();
13554 while (it != end()) {
13555 const Key &akey = it.key();
13557 const_iterator it2 = other.find(akey);
13559 if (it2 == other.end() || !(it2.key() == akey))
13561 if (!QTypeInfo<T>::isDummy && !(it.value() == it2.value()))
13565 } while (it != end() && it.key() == akey);
13570 template <class Key, class T>
13571 class QMultiHash : public QHash<Key, T>
13575 QMultiHash(const QHash<Key, T> &other) : QHash<Key, T>(other) {}
13577 inline typename QHash<Key, T>::iterator replace(const Key &key, const T &value)
13578 { return QHash<Key, T>::insert(key, value); }
13580 inline typename QHash<Key, T>::iterator insert(const Key &key, const T &value)
13581 { return QHash<Key, T>::insertMulti(key, value); }
13583 inline QMultiHash &operator+=(const QMultiHash &other)
13584 { unite(other); return *this; }
13585 inline QMultiHash operator+(const QMultiHash &other) const
13586 { QMultiHash result = *this; result += other; return result; }
13589 using QHash<Key, T>::contains;
13590 using QHash<Key, T>::remove;
13591 using QHash<Key, T>::count;
13592 using QHash<Key, T>::find;
13593 using QHash<Key, T>::constFind;
13594 # 919 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h"
13595 bool contains(const Key &key, const T &value) const;
13597 int remove(const Key &key, const T &value);
13599 int count(const Key &key, const T &value) const;
13601 typename QHash<Key, T>::iterator find(const Key &key, const T &value) {
13602 typename QHash<Key, T>::iterator i(find(key));
13603 typename QHash<Key, T>::iterator end(this->end());
13604 while (i != end && i.key() == key) {
13605 if (i.value() == value)
13611 typename QHash<Key, T>::const_iterator find(const Key &key, const T &value) const {
13612 typename QHash<Key, T>::const_iterator i(constFind(key));
13613 typename QHash<Key, T>::const_iterator end(QHash<Key, T>::constEnd());
13614 while (i != end && i.key() == key) {
13615 if (i.value() == value)
13621 typename QHash<Key, T>::const_iterator constFind(const Key &key, const T &value) const
13622 { return find(key, value); }
13624 T &operator[](const Key &key);
13625 const T operator[](const Key &key) const;
13628 template <class Key, class T>
13629 inline bool QMultiHash<Key, T>::contains(const Key &key, const T &value) const
13631 return constFind(key, value) != QHash<Key, T>::constEnd();
13634 template <class Key, class T>
13635 inline int QMultiHash<Key, T>::remove(const Key &key, const T &value)
13638 typename QHash<Key, T>::iterator i(find(key));
13639 typename QHash<Key, T>::const_iterator end(QHash<Key, T>::constEnd());
13640 while (i != end && i.key() == key) {
13641 if (i.value() == value) {
13651 template <class Key, class T>
13652 inline int QMultiHash<Key, T>::count(const Key &key, const T &value) const
13655 typename QHash<Key, T>::const_iterator i(constFind(key));
13656 typename QHash<Key, T>::const_iterator end(QHash<Key, T>::constEnd());
13657 while (i != end && i.key() == key) {
13658 if (i.value() == value)
13665 template <class Key, class T> class QHashIterator { typedef typename QHash<Key,T>::const_iterator const_iterator; typedef const_iterator Item; QHash<Key,T> c; const_iterator i, n; inline bool item_exists() const { return n != c.constEnd(); } public: inline QHashIterator(const QHash<Key,T> &container) : c(container), i(c.constBegin()), n(c.constEnd()) {} inline QHashIterator &operator=(const QHash<Key,T> &container) { c = container; i = c.constBegin(); n = c.constEnd(); return *this; } inline void toFront() { i = c.constBegin(); n = c.constEnd(); } inline void toBack() { i = c.constEnd(); n = c.constEnd(); } inline bool hasNext() const { return i != c.constEnd(); } inline Item next() { n = i++; return n; } inline Item peekNext() const { return i; } inline bool hasPrevious() const { return i != c.constBegin(); } inline Item previous() { n = --i; return n; } inline Item peekPrevious() const { const_iterator p = i; return --p; } inline const T &value() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h",989);} while (0); return *n; } inline const Key &key() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h",989);} while (0); return n.key(); } inline bool findNext(const T &t) { while ((n = i) != c.constEnd()) if (*i++ == t) return true; return false; } inline bool findPrevious(const T &t) { while (i != c.constBegin()) if (*(n = --i) == t) return true; n = c.constEnd(); return false; } };
13666 template <class Key, class T> class QMutableHashIterator { typedef typename QHash<Key,T>::iterator iterator; typedef typename QHash<Key,T>::const_iterator const_iterator; typedef iterator Item; QHash<Key,T> *c; iterator i, n; inline bool item_exists() const { return const_iterator(n) != c->constEnd(); } public: inline QMutableHashIterator(QHash<Key,T> &container) : c(&container) { c->setSharable(false); i = c->begin(); n = c->end(); } inline ~QMutableHashIterator() { c->setSharable(true); } inline QMutableHashIterator &operator=(QHash<Key,T> &container) { c->setSharable(true); c = &container; c->setSharable(false); i = c->begin(); n = c->end(); return *this; } inline void toFront() { i = c->begin(); n = c->end(); } inline void toBack() { i = c->end(); n = c->end(); } inline bool hasNext() const { return const_iterator(i) != c->constEnd(); } inline Item next() { n = i++; return n; } inline Item peekNext() const { return i; } inline bool hasPrevious() const { return const_iterator(i) != c->constBegin(); } inline Item previous() { n = --i; return n; } inline Item peekPrevious() const { iterator p = i; return --p; } inline void remove() { if (const_iterator(n) != c->constEnd()) { i = c->erase(n); n = c->end(); } } inline void setValue(const T &t) { if (const_iterator(n) != c->constEnd()) *n = t; } inline T &value() { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h",990);} while (0); return *n; } inline const T &value() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h",990);} while (0); return *n; } inline const Key &key() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qhash.h",990);} while (0); return n.key(); } inline bool findNext(const T &t) { while (const_iterator(n = i) != c->constEnd()) if (*i++ == t) return true; return false; } inline bool findPrevious(const T &t) { while (const_iterator(i) != c->constBegin()) if (*(n = --i) == t) return true; n = c->end(); return false; } };
13669 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qhash.h" 2
13670 # 48 "generators/makefile.h" 2
13671 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qfileinfo.h" 1
13672 # 49 "generators/makefile.h" 2
13680 struct ReplaceExtraCompilerCacheKey
13683 QString var, in, out, pwd;
13684 ReplaceExtraCompilerCacheKey(const QString &v, const QStringList &i, const QStringList &o);
13685 bool operator==(const ReplaceExtraCompilerCacheKey &f) const;
13686 inline uint hashCode() const {
13688 hash = qHash(var) | qHash(in) | qHash(out) ;
13692 inline uint qHash(const ReplaceExtraCompilerCacheKey &f) { return f.hashCode(); }
13694 struct ReplaceExtraCompilerCacheKey;
13696 class MakefileGenerator : protected QMakeSourceFileInfo
13699 bool init_opath_already, init_already, no_io;
13700 QHash<QString, bool> init_compiler_already;
13701 QString build_args(const QString &outdir=QString());
13702 void checkMultipleDefinition(const QString &, const QString &);
13705 mutable QHash<QString, QMakeLocalFileName> depHeuristicsCache;
13706 mutable QHash<QString, QStringList> dependsCache;
13707 mutable QHash<ReplaceExtraCompilerCacheKey, QString> extraCompilerVariablesCache;
13710 QStringList createObjectList(const QStringList &sources);
13713 void writeObj(QTextStream &, const QString &src);
13714 void writeInstalls(QTextStream &t, const QString &installs, bool noBuild=false);
13715 void writeHeader(QTextStream &t);
13716 void writeSubDirs(QTextStream &t);
13717 void writeMakeQmake(QTextStream &t);
13718 void writeExtraVariables(QTextStream &t);
13719 void writeExtraTargets(QTextStream &t);
13720 void writeExtraCompilerTargets(QTextStream &t);
13721 void writeExtraCompilerVariables(QTextStream &t);
13722 virtual bool writeStubMakefile(QTextStream &t);
13723 virtual bool writeMakefile(QTextStream &t);
13729 QString in_directory, out_directory;
13730 QString profile, target, makefile;
13731 QStringList depends;
13733 enum SubTargetFlags {
13734 SubTargetInstalls=0x01,
13735 SubTargetOrdered=0x02,
13737 SubTargetsNoFlags=0x00
13739 void writeSubTargets(QTextStream &t, QList<SubTarget*> subtargets, int flags);
13742 bool verifyExtraCompiler(const QString &c, const QString &f);
13743 virtual QString replaceExtraCompilerVariables(const QString &, const QStringList &, const QStringList &);
13744 inline QString replaceExtraCompilerVariables(const QString &val, const QString &in, const QString &out)
13745 { return replaceExtraCompilerVariables(val, QStringList(in), QStringList(out)); }
13748 QMakeLocalFileName fixPathForFile(const QMakeLocalFileName &, bool);
13749 QMakeLocalFileName findFileForDep(const QMakeLocalFileName &, const QMakeLocalFileName &);
13750 QFileInfo findFileInfo(const QMakeLocalFileName &);
13751 QMakeProject *project;
13754 virtual QString unescapeFilePath(const QString &path) const;
13755 virtual QStringList unescapeFilePaths(const QStringList &path) const;
13756 virtual QString escapeFilePath(const QString &path) const { return path; }
13757 QStringList escapeFilePaths(const QStringList &paths) const;
13760 void verifyCompilers();
13761 virtual void init();
13762 void initOutPaths();
13765 QString variable_in;
13766 enum CompilerFlag {
13767 CompilerNoFlags = 0x00,
13768 CompilerBuiltin = 0x01,
13769 CompilerNoCheckDeps = 0x02,
13770 CompilerRemoveNoExist = 0x04
13774 void initCompiler(const Compiler &comp);
13776 VPATH_NoFlag = 0x00,
13777 VPATH_WarnMissingFiles = 0x01,
13778 VPATH_RemoveMissingFiles = 0x02,
13779 VPATH_NoFixify = 0x04
13781 QStringList findFilesInVPATH(QStringList l, uchar flags, const QString &var="");
13783 inline int findExecutable(const QStringList &cmdline)
13784 { int ret; canExecute(cmdline, &ret); return ret; }
13785 bool canExecute(const QStringList &cmdline, int *argv0) const;
13786 inline bool canExecute(const QString &cmdline) const
13787 { return canExecute(cmdline.split(' '), 0); }
13789 bool mkdir(const QString &dir) const;
13790 QString mkdir_p_asstring(const QString &dir, bool escape=true) const;
13793 QString buildArgs(const QString &outdir=QString());
13794 QString specdir(const QString &outdir=QString());
13796 virtual QStringList &findDependencies(const QString &file);
13797 virtual bool doDepends() const { return Option::mkfile::do_deps; }
13799 void filterIncludedFiles(const QString &);
13800 virtual void processSources() { filterIncludedFiles("SOURCES"); filterIncludedFiles("GENERATED_SOURCES"); }
13803 virtual void usePlatformDir();
13806 virtual QString defaultInstall(const QString &);
13809 QString prlFileName(bool fixify=true);
13810 void writePrlFile();
13811 bool processPrlFile(QString &);
13812 virtual void processPrlVariable(const QString &, const QStringList &);
13813 virtual void processPrlFiles();
13814 virtual void writePrlFile(QTextStream &);
13817 virtual bool findLibraries();
13820 virtual QString var(const QString &var);
13821 QString varGlue(const QString &var, const QString &before, const QString &glue, const QString &after);
13822 QString varList(const QString &var);
13823 QString val(const QStringList &varList);
13824 QString valGlue(const QStringList &varList, const QString &before, const QString &glue, const QString &after);
13825 QString valList(const QStringList &varList);
13827 QString filePrefixRoot(const QString &, const QString &);
13830 enum FileFixifyType { FileFixifyAbsolute, FileFixifyRelative, FileFixifyDefault };
13831 QString fileFixify(const QString& file, const QString &out_dir=QString(),
13832 const QString &in_dir=QString(), FileFixifyType fix=FileFixifyDefault, bool canon=true) const;
13833 inline QString fileFixify(const QString& file, FileFixifyType fix, bool canon=true) const
13834 { return fileFixify(file, QString(), QString(), fix, canon); }
13835 QStringList fileFixify(const QStringList& files, const QString &out_dir=QString(),
13836 const QString &in_dir=QString(), FileFixifyType fix=FileFixifyDefault, bool canon=true) const;
13837 inline QStringList fileFixify(const QStringList& files, FileFixifyType fix, bool canon=true) const
13838 { return fileFixify(files, QString(), QString(), fix, canon); }
13841 MakefileGenerator();
13842 virtual ~MakefileGenerator();
13843 QMakeProject *projectFile() const;
13844 void setProjectFile(QMakeProject *p);
13846 void setNoIO(bool o);
13849 inline bool exists(QString file) const { return fileInfo(file).exists(); }
13850 QFileInfo fileInfo(QString file) const;
13852 static MakefileGenerator *create(QMakeProject *);
13853 virtual bool write();
13854 virtual bool writeProjectMakefile();
13855 virtual bool supportsMetaBuild() { return true; }
13856 virtual bool supportsMergedBuilds() { return false; }
13857 virtual bool mergeBuildProject(MakefileGenerator * ) { return false; }
13858 virtual bool openOutput(QFile &, const QString &build) const;
13859 virtual bool isWindowsShell() const { return Option::target_mode == Option::TARG_WIN_MODE; }
13862 inline void MakefileGenerator::setNoIO(bool o)
13865 inline bool MakefileGenerator::noIO() const
13868 inline QString MakefileGenerator::defaultInstall(const QString &)
13869 { return QString(""); }
13871 inline bool MakefileGenerator::findLibraries()
13874 inline MakefileGenerator::~MakefileGenerator()
13876 # 43 "generators/unix/unixmake.h" 2
13878 class UnixMakefileGenerator : public MakefileGenerator
13880 bool init_flag, include_deps;
13881 bool writeMakefile(QTextStream &);
13882 QString libtoolFileName(bool fixify=true);
13883 void writeLibtoolFile();
13884 QString pkgConfigPrefix() const;
13885 QString pkgConfigFileName(bool fixify=true);
13886 QString pkgConfigFixPath(QString) const;
13887 void writePkgConfigFile();
13888 void writePrlFile(QTextStream &);
13891 UnixMakefileGenerator();
13892 ~UnixMakefileGenerator();
13895 virtual bool doPrecompiledHeaders() const { return project->isActiveConfig("precompile_header"); }
13896 virtual bool doDepends() const { return !include_deps && !Option::mkfile::do_stub_makefile && MakefileGenerator::doDepends(); }
13897 virtual QString defaultInstall(const QString &);
13898 virtual void processPrlVariable(const QString &, const QStringList &);
13899 virtual void processPrlFiles();
13901 virtual bool findLibraries();
13902 virtual QString escapeFilePath(const QString &path) const;
13903 virtual QStringList &findDependencies(const QString &);
13904 virtual void init();
13906 void writeMakeParts(QTextStream &);
13912 inline UnixMakefileGenerator::~UnixMakefileGenerator()
13914 # 40 "generators/unix/unixmake2.cpp" 2
13916 # 41 "generators/unix/unixmake2.cpp" 2
13919 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qmap.h" 1
13921 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstringlist.h" 1
13923 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
13926 class QMakeMetaInfo
13928 bool readLibtoolFile(const QString &f);
13929 bool readPkgCfgFile(const QString &f);
13930 QMap<QString, QStringList> vars;
13932 static QMap<QString, QMap<QString, QStringList> > cache_vars;
13937 bool readLib(QString lib);
13938 static QString findLib(QString lib);
13939 static bool libExists(QString lib);
13940 QString type() const;
13942 bool isEmpty(const QString &v);
13943 QStringList &values(const QString &v);
13944 QString first(const QString &v);
13945 QMap<QString, QStringList> &variables();
13948 inline bool QMakeMetaInfo::isEmpty(const QString &v)
13949 { return !vars.contains(v) || vars[v].isEmpty(); }
13951 inline QString QMakeMetaInfo::type() const
13952 { return meta_type; }
13954 inline QStringList &QMakeMetaInfo::values(const QString &v)
13955 { return vars[v]; }
13957 inline QString QMakeMetaInfo::first(const QString &v)
13966 return isEmpty(v) ? QString("") : vars[v].first();
13970 inline QMap<QString, QStringList> &QMakeMetaInfo::variables()
13973 inline bool QMakeMetaInfo::libExists(QString lib)
13974 { return !findLib(lib).isNull(); }
13975 # 42 "generators/unix/unixmake2.cpp" 2
13976 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qregexp.h" 1
13977 # 43 "generators/unix/unixmake2.cpp" 2
13978 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qbytearray.h" 1
13979 # 44 "generators/unix/unixmake2.cpp" 2
13980 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qfile.h" 1
13981 # 45 "generators/unix/unixmake2.cpp" 2
13982 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qdir.h" 1
13983 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdir.h" 1
13984 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdir.h"
13985 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
13986 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdir.h" 2
13987 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qfileinfo.h" 1
13988 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdir.h" 2
13989 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstringlist.h" 1
13990 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdir.h" 2
13994 typedef QtValidLicenseForCoreModule QtCoreModule;
14001 QDirPrivate *d_ptr;
14003 inline QDirPrivate* d_func() { return reinterpret_cast<QDirPrivate *>(d_ptr); } inline const QDirPrivate* d_func() const { return reinterpret_cast<const QDirPrivate *>(d_ptr); } friend class QDirPrivate;
14005 enum Filter { Dirs = 0x001,
14008 NoSymLinks = 0x008,
14009 AllEntries = Dirs | Files | Drives,
14017 Executable = 0x040,
14018 PermissionMask = 0x070,
14027 AccessMask = 0x3F0,
14030 CaseSensitive = 0x800,
14031 NoDotAndDotDot = 0x1000,
14038 typedef QFlags<Filter> Filters;
14043 enum SortFlag { Name = 0x00,
14053 LocaleAware = 0x40,
14060 typedef QFlags<SortFlag> SortFlags;
14062 QDir(const QDir &);
14063 QDir(const QString &path = QString());
14064 QDir(const QString &path, const QString &nameFilter,
14065 SortFlags sort = SortFlags(Name | IgnoreCase), Filters filter = AllEntries);
14068 QDir &operator=(const QDir &);
14069 QDir &operator=(const QString &path);
14071 void setPath(const QString &path);
14072 QString path() const;
14073 QString absolutePath() const;
14074 QString canonicalPath() const;
14076 static void addResourceSearchPath(const QString &path);
14078 static void setSearchPaths(const QString &prefix, const QStringList &searchPaths);
14079 static void addSearchPath(const QString &prefix, const QString &path);
14080 static QStringList searchPaths(const QString &prefix);
14082 QString dirName() const;
14083 QString filePath(const QString &fileName) const;
14084 QString absoluteFilePath(const QString &fileName) const;
14085 QString relativeFilePath(const QString &fileName) const;
14088 static QString convertSeparators(const QString &pathName);
14090 static QString toNativeSeparators(const QString &pathName);
14091 static QString fromNativeSeparators(const QString &pathName);
14093 bool cd(const QString &dirName);
14096 QStringList nameFilters() const;
14097 void setNameFilters(const QStringList &nameFilters);
14099 Filters filter() const;
14100 void setFilter(Filters filter);
14101 SortFlags sorting() const;
14102 void setSorting(SortFlags sort);
14104 uint count() const;
14105 QString operator[](int) const;
14107 static QStringList nameFiltersFromString(const QString &nameFilter);
14109 QStringList entryList(Filters filters = NoFilter, SortFlags sort = NoSort) const;
14110 QStringList entryList(const QStringList &nameFilters, Filters filters = NoFilter,
14111 SortFlags sort = NoSort) const;
14113 QFileInfoList entryInfoList(Filters filters = NoFilter, SortFlags sort = NoSort) const;
14114 QFileInfoList entryInfoList(const QStringList &nameFilters, Filters filters = NoFilter,
14115 SortFlags sort = NoSort) const;
14117 bool mkdir(const QString &dirName) const;
14118 bool rmdir(const QString &dirName) const;
14119 bool mkpath(const QString &dirPath) const;
14120 bool rmpath(const QString &dirPath) const;
14122 bool isReadable() const;
14123 bool exists() const;
14124 bool isRoot() const;
14126 static bool isRelativePath(const QString &path);
14127 inline static bool isAbsolutePath(const QString &path) { return !isRelativePath(path); }
14128 bool isRelative() const;
14129 inline bool isAbsolute() const { return !isRelative(); }
14130 bool makeAbsolute();
14132 bool operator==(const QDir &dir) const;
14133 inline bool operator!=(const QDir &dir) const { return !operator==(dir); }
14135 bool remove(const QString &fileName);
14136 bool rename(const QString &oldName, const QString &newName);
14137 bool exists(const QString &name) const;
14139 static QFileInfoList drives();
14141 static QChar separator();
14143 static bool setCurrent(const QString &path);
14144 static inline QDir current() { return QDir(currentPath()); }
14145 static QString currentPath();
14147 static inline QDir home() { return QDir(homePath()); }
14148 static QString homePath();
14149 static inline QDir root() { return QDir(rootPath()); }
14150 static QString rootPath();
14151 static inline QDir temp() { return QDir(tempPath()); }
14152 static QString tempPath();
14155 static bool match(const QStringList &filters, const QString &fileName);
14156 static bool match(const QString &filter, const QString &fileName);
14158 static QString cleanPath(const QString &path);
14159 void refresh() const;
14160 # 244 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdir.h"
14163 inline QFlags<QDir::Filters::enum_type> operator|(QDir::Filters::enum_type f1, QDir::Filters::enum_type f2) { return QFlags<QDir::Filters::enum_type>(f1) | f2; } inline QFlags<QDir::Filters::enum_type> operator|(QDir::Filters::enum_type f1, QFlags<QDir::Filters::enum_type> f2) { return f2 | f1; }
14164 inline QFlags<QDir::SortFlags::enum_type> operator|(QDir::SortFlags::enum_type f1, QDir::SortFlags::enum_type f2) { return QFlags<QDir::SortFlags::enum_type>(f1) | f2; } inline QFlags<QDir::SortFlags::enum_type> operator|(QDir::SortFlags::enum_type f1, QFlags<QDir::SortFlags::enum_type> f2) { return f2 | f1; }
14168 QDebug operator<<(QDebug debug, QDir::Filters filters);
14169 QDebug operator<<(QDebug debug, const QDir &dir);
14173 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qdir.h" 2
14174 # 46 "generators/unix/unixmake2.cpp" 2
14175 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qdatetime.h" 1
14176 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qdatetime.h" 1
14177 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qdatetime.h"
14178 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
14179 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qdatetime.h" 2
14180 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qnamespace.h" 1
14181 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qdatetime.h" 2
14185 typedef QtValidLicenseForCoreModule QtCoreModule;
14190 QDate() { jd = 0; }
14191 QDate(int y, int m, int d);
14193 bool isNull() const { return jd == 0; }
14194 bool isValid() const;
14199 int dayOfWeek() const;
14200 int dayOfYear() const;
14201 int daysInMonth() const;
14202 int daysInYear() const;
14203 int weekNumber(int *yearNum = 0) const;
14210 static QString shortMonthName(int month);
14211 static QString shortDayName(int weekday);
14212 static QString longMonthName(int month);
14213 static QString longDayName(int weekday);
14216 QString toString(Qt::DateFormat f = Qt::TextDate) const;
14217 QString toString(const QString &format) const;
14219 bool setYMD(int y, int m, int d);
14220 bool setDate(int year, int month, int date);
14222 QDate addDays(int days) const;
14223 QDate addMonths(int months) const;
14224 QDate addYears(int years) const;
14225 int daysTo(const QDate &) const;
14227 bool operator==(const QDate &other) const { return jd == other.jd; }
14228 bool operator!=(const QDate &other) const { return jd != other.jd; }
14229 bool operator<(const QDate &other) const { return jd < other.jd; }
14230 bool operator<=(const QDate &other) const { return jd <= other.jd; }
14231 bool operator>(const QDate &other) const { return jd > other.jd; }
14232 bool operator>=(const QDate &other) const { return jd >= other.jd; }
14234 static QDate currentDate();
14236 static QDate fromString(const QString &s, Qt::DateFormat f = Qt::TextDate);
14237 static QDate fromString(const QString &s, const QString &format);
14239 static bool isValid(int y, int m, int d);
14240 static bool isLeapYear(int year);
14246 static uint gregorianToJulian(int y, int m, int d);
14247 static void julianToGregorian(uint jd, int &y, int &m, int &d);
14253 static inline QDate fromJulianDay(int jd) { QDate d; d.jd = jd; return d; }
14254 inline int toJulianDay() const { return jd; }
14259 friend class QDateTime;
14260 friend class QDateTimePrivate;
14262 friend QDataStream &operator<<(QDataStream &, const QDate &);
14263 friend QDataStream &operator>>(QDataStream &, QDate &);
14266 template <> class QTypeInfo<QDate> { public: enum { isComplex = (((Q_MOVABLE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(QDate)>sizeof(void*)), isPointer = false, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "QDate"; } };
14271 QTime(): mds(NullTime) {}
14272 QTime(int h, int m, int s = 0, int ms = 0);
14274 bool isNull() const { return mds == NullTime; }
14275 bool isValid() const;
14278 int minute() const;
14279 int second() const;
14282 QString toString(Qt::DateFormat f = Qt::TextDate) const;
14283 QString toString(const QString &format) const;
14285 bool setHMS(int h, int m, int s, int ms = 0);
14287 QTime addSecs(int secs) const;
14288 int secsTo(const QTime &) const;
14289 QTime addMSecs(int ms) const;
14290 int msecsTo(const QTime &) const;
14292 bool operator==(const QTime &other) const { return mds == other.mds; }
14293 bool operator!=(const QTime &other) const { return mds != other.mds; }
14294 bool operator<(const QTime &other) const { return mds < other.mds; }
14295 bool operator<=(const QTime &other) const { return mds <= other.mds; }
14296 bool operator>(const QTime &other) const { return mds > other.mds; }
14297 bool operator>=(const QTime &other) const { return mds >= other.mds; }
14299 static QTime currentTime();
14301 static QTime fromString(const QString &s, Qt::DateFormat f = Qt::TextDate);
14302 static QTime fromString(const QString &s, const QString &format);
14304 static bool isValid(int h, int m, int s, int ms = 0);
14312 int elapsed() const;
14314 enum TimeFlag { NullTime = -1 };
14315 inline int ds() const { return mds == -1 ? 0 : mds; }
14318 friend class QDateTime;
14319 friend class QDateTimePrivate;
14321 friend QDataStream &operator<<(QDataStream &, const QTime &);
14322 friend QDataStream &operator>>(QDataStream &, QTime &);
14325 template <> class QTypeInfo<QTime> { public: enum { isComplex = (((Q_MOVABLE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(QTime)>sizeof(void*)), isPointer = false, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "QTime"; } };
14327 class QDateTimePrivate;
14333 explicit QDateTime(const QDate &);
14334 QDateTime(const QDate &, const QTime &, Qt::TimeSpec spec = Qt::LocalTime);
14335 QDateTime(const QDateTime &other);
14338 QDateTime &operator=(const QDateTime &other);
14340 bool isNull() const;
14341 bool isValid() const;
14343 QDate date() const;
14344 QTime time() const;
14345 Qt::TimeSpec timeSpec() const;
14346 uint toTime_t() const;
14347 void setDate(const QDate &date);
14348 void setTime(const QTime &time);
14349 void setTimeSpec(Qt::TimeSpec spec);
14350 void setTime_t(uint secsSince1Jan1970UTC);
14352 QString toString(Qt::DateFormat f = Qt::TextDate) const;
14353 QString toString(const QString &format) const;
14355 QDateTime addDays(int days) const;
14356 QDateTime addMonths(int months) const;
14357 QDateTime addYears(int years) const;
14358 QDateTime addSecs(int secs) const;
14359 QDateTime addMSecs(qint64 msecs) const;
14360 QDateTime toTimeSpec(Qt::TimeSpec spec) const;
14361 inline QDateTime toLocalTime() const { return toTimeSpec(Qt::LocalTime); }
14362 inline QDateTime toUTC() const { return toTimeSpec(Qt::UTC); }
14363 int daysTo(const QDateTime &) const;
14364 int secsTo(const QDateTime &) const;
14366 bool operator==(const QDateTime &other) const;
14367 inline bool operator!=(const QDateTime &other) const { return !(*this == other); }
14368 bool operator<(const QDateTime &other) const;
14369 inline bool operator<=(const QDateTime &other) const { return !(other < *this); }
14370 inline bool operator>(const QDateTime &other) const { return other < *this; }
14371 inline bool operator>=(const QDateTime &other) const { return !(*this < other); }
14373 static QDateTime currentDateTime();
14375 static QDateTime fromString(const QString &s, Qt::DateFormat f = Qt::TextDate);
14376 static QDateTime fromString(const QString &s, const QString &format);
14378 static QDateTime fromTime_t(uint secsSince1Jan1970UTC);
14379 # 256 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qdatetime.h"
14381 friend class QDateTimePrivate;
14383 QDateTimePrivate *d;
14386 friend QDataStream &operator<<(QDataStream &, const QDateTime &);
14387 friend QDataStream &operator>>(QDataStream &, QDateTime &);
14390 template <> class QTypeInfo<QDateTime> { public: enum { isComplex = (((Q_MOVABLE_TYPE) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isLarge = (sizeof(QDateTime)>sizeof(void*)), isPointer = false, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE) != 0) }; static inline const char *name() { return "QDateTime"; } };
14391 # 287 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qdatetime.h"
14392 QDataStream &operator<<(QDataStream &, const QDate &);
14393 QDataStream &operator>>(QDataStream &, QDate &);
14394 QDataStream &operator<<(QDataStream &, const QTime &);
14395 QDataStream &operator>>(QDataStream &, QTime &);
14396 QDataStream &operator<<(QDataStream &, const QDateTime &);
14397 QDataStream &operator>>(QDataStream &, QDateTime &);
14401 QDebug operator<<(QDebug, const QDate &);
14402 QDebug operator<<(QDebug, const QTime &);
14403 QDebug operator<<(QDebug, const QDateTime &);
14407 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qdatetime.h" 2
14408 # 47 "generators/unix/unixmake2.cpp" 2
14409 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qdebug.h" 1
14410 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h" 1
14411 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h"
14412 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qalgorithms.h" 1
14413 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h" 2
14414 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qhash.h" 1
14415 # 44 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h" 2
14416 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qlist.h" 1
14417 # 45 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h" 2
14418 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qmap.h" 1
14419 # 46 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h" 2
14420 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qpair.h" 1
14421 # 47 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h" 2
14422 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qtextstream.h" 1
14423 # 48 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h" 2
14424 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qstring.h" 1
14425 # 49 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h" 2
14426 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qvector.h" 1
14427 # 50 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h" 2
14428 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qset.h" 1
14429 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qset.h" 1
14430 # 42 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qset.h"
14431 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qhash.h" 1
14432 # 43 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qset.h" 2
14436 typedef QtValidLicenseForCoreModule QtCoreModule;
14441 typedef QHash<T, QHashDummyValue> Hash;
14445 inline QSet(const QSet<T> &other) : q_hash(other.q_hash) {}
14447 inline QSet<T> &operator=(const QSet<T> &other)
14448 { q_hash = other.q_hash; return *this; }
14450 inline bool operator==(const QSet<T> &other) const
14451 { return q_hash == other.q_hash; }
14452 inline bool operator!=(const QSet<T> &other) const
14453 { return q_hash != other.q_hash; }
14455 inline int size() const { return q_hash.size(); }
14457 inline bool isEmpty() const { return q_hash.isEmpty(); }
14459 inline int capacity() const { return q_hash.capacity(); }
14460 inline void reserve(int size);
14461 inline void squeeze() { q_hash.squeeze(); }
14463 inline void detach() { q_hash.detach(); }
14464 inline bool isDetached() const { return q_hash.isDetached(); }
14465 inline void setSharable(bool sharable) { q_hash.setSharable(sharable); }
14467 inline void clear() { q_hash.clear(); }
14469 inline bool remove(const T &value) { return q_hash.remove(value) != 0; }
14471 inline bool contains(const T &value) const { return q_hash.contains(value); }
14473 class const_iterator;
14477 typedef QHash<T, QHashDummyValue> Hash;
14478 typename Hash::iterator i;
14481 typedef std::bidirectional_iterator_tag iterator_category;
14482 typedef ptrdiff_t difference_type;
14483 typedef T value_type;
14484 typedef const T *pointer;
14485 typedef const T &reference;
14487 inline iterator() {}
14488 inline iterator(typename Hash::iterator o) : i(o) {}
14489 inline iterator(const iterator &o) : i(o.i) {}
14490 inline iterator &operator=(const iterator &o) { i = o.i; return *this; }
14491 inline const T &operator*() const { return i.key(); }
14492 inline const T *operator->() const { return &i.key(); }
14493 inline bool operator==(const iterator &o) const { return i == o.i; }
14494 inline bool operator!=(const iterator &o) const { return i != o.i; }
14495 inline bool operator==(const const_iterator &o) const
14496 { return i == reinterpret_cast<const iterator &>(o).i; }
14497 inline bool operator!=(const const_iterator &o) const
14498 { return i != reinterpret_cast<const iterator &>(o).i; }
14499 inline iterator &operator++() { ++i; return *this; }
14500 inline iterator operator++(int) { iterator r = *this; ++i; return r; }
14501 inline iterator &operator--() { --i; return *this; }
14502 inline iterator operator--(int) { iterator r = *this; --i; return r; }
14503 inline iterator operator+(int j) const { return i + j; }
14504 inline iterator operator-(int j) const { return i - j; }
14505 inline iterator &operator+=(int j) { i += j; return *this; }
14506 inline iterator &operator-=(int j) { i -= j; return *this; }
14509 class const_iterator
14511 typedef QHash<T, QHashDummyValue> Hash;
14512 typename Hash::const_iterator i;
14515 typedef std::bidirectional_iterator_tag iterator_category;
14516 typedef ptrdiff_t difference_type;
14517 typedef T value_type;
14518 typedef const T *pointer;
14519 typedef const T &reference;
14521 inline const_iterator() {}
14522 inline const_iterator(typename Hash::const_iterator o) : i(o) {}
14523 inline const_iterator(const const_iterator &o) : i(o.i) {}
14524 inline const_iterator(const iterator &o)
14525 : i(reinterpret_cast<const const_iterator &>(o).i) {}
14526 inline const_iterator &operator=(const const_iterator &o) { i = o.i; return *this; }
14527 inline const T &operator*() const { return i.key(); }
14528 inline const T *operator->() const { return &i.key(); }
14529 inline bool operator==(const const_iterator &o) const { return i == o.i; }
14530 inline bool operator!=(const const_iterator &o) const { return i != o.i; }
14531 inline const_iterator &operator++() { ++i; return *this; }
14532 inline const_iterator operator++(int) { const_iterator r = *this; ++i; return r; }
14533 inline const_iterator &operator--() { --i; return *this; }
14534 inline const_iterator operator--(int) { const_iterator r = *this; --i; return r; }
14535 inline const_iterator operator+(int j) const { return i + j; }
14536 inline const_iterator operator-(int j) const { return i - j; }
14537 inline const_iterator &operator+=(int j) { i += j; return *this; }
14538 inline const_iterator &operator-=(int j) { i -= j; return *this; }
14542 inline iterator begin() { return q_hash.begin(); }
14543 inline const_iterator begin() const { return q_hash.begin(); }
14544 inline const_iterator constBegin() const { return q_hash.constBegin(); }
14545 inline iterator end() { return q_hash.end(); }
14546 inline const_iterator end() const { return q_hash.end(); }
14547 inline const_iterator constEnd() const { return q_hash.constEnd(); }
14548 iterator erase(iterator i)
14549 { return q_hash.erase(reinterpret_cast<typename Hash::iterator &>(i)); }
14552 typedef iterator Iterator;
14553 typedef const_iterator ConstIterator;
14554 inline int count() const { return q_hash.count(); }
14555 inline const_iterator insert(const T &value)
14556 { return static_cast<typename Hash::const_iterator>(q_hash.insert(value,
14557 QHashDummyValue())); }
14558 iterator find(const T &value) { return q_hash.find(value); }
14559 const_iterator find(const T &value) const { return q_hash.find(value); }
14560 inline const_iterator constFind(const T &value) const { return find(value); }
14561 QSet<T> &unite(const QSet<T> &other);
14562 QSet<T> &intersect(const QSet<T> &other);
14563 QSet<T> &subtract(const QSet<T> &other);
14566 typedef T key_type;
14567 typedef T value_type;
14568 typedef value_type *pointer;
14569 typedef const value_type *const_pointer;
14570 typedef value_type &reference;
14571 typedef const value_type &const_reference;
14572 typedef ptrdiff_t difference_type;
14573 typedef int size_type;
14575 inline bool empty() const { return isEmpty(); }
14578 inline QSet<T> &operator<<(const T &value) { insert(value); return *this; }
14579 inline QSet<T> &operator|=(const QSet<T> &other) { unite(other); return *this; }
14580 inline QSet<T> &operator|=(const T &value) { insert(value); return *this; }
14581 inline QSet<T> &operator&=(const QSet<T> &other) { intersect(other); return *this; }
14582 inline QSet<T> &operator&=(const T &value)
14583 { QSet<T> result; if (contains(value)) result.insert(value); return (*this = result); }
14584 inline QSet<T> &operator+=(const QSet<T> &other) { unite(other); return *this; }
14585 inline QSet<T> &operator+=(const T &value) { insert(value); return *this; }
14586 inline QSet<T> &operator-=(const QSet<T> &other) { subtract(other); return *this; }
14587 inline QSet<T> &operator-=(const T &value) { remove(value); return *this; }
14588 inline QSet<T> operator|(const QSet<T> &other) const
14589 { QSet<T> result = *this; result |= other; return result; }
14590 inline QSet<T> operator&(const QSet<T> &other) const
14591 { QSet<T> result = *this; result &= other; return result; }
14592 inline QSet<T> operator+(const QSet<T> &other) const
14593 { QSet<T> result = *this; result += other; return result; }
14594 inline QSet<T> operator-(const QSet<T> &other) const
14595 { QSet<T> result = *this; result -= other; return result; }
14598 inline QSet<T> operator|(const QSet<T> &other)
14599 { QSet<T> result = *this; result |= other; return result; }
14600 inline QSet<T> operator&(const QSet<T> &other)
14601 { QSet<T> result = *this; result &= other; return result; }
14602 inline QSet<T> operator+(const QSet<T> &other)
14603 { QSet<T> result = *this; result += other; return result; }
14604 inline QSet<T> operator-(const QSet<T> &other)
14605 { QSet<T> result = *this; result -= other; return result; }
14608 QList<T> toList() const;
14609 inline QList<T> values() const { return toList(); }
14611 static QSet<T> fromList(const QList<T> &list);
14618 inline void QSet<T>::reserve(int asize) { q_hash.reserve(asize); }
14621 inline QSet<T> &QSet<T>::unite(const QSet<T> &other)
14623 QSet<T> copy(other);
14624 typename QSet<T>::const_iterator i = copy.constEnd();
14625 while (i != copy.constBegin()) {
14633 inline QSet<T> &QSet<T>::intersect(const QSet<T> &other)
14635 QSet<T> copy1(*this);
14636 QSet<T> copy2(other);
14637 typename QSet<T>::const_iterator i = copy1.constEnd();
14638 while (i != copy1.constBegin()) {
14640 if (!copy2.contains(*i))
14647 inline QSet<T> &QSet<T>::subtract(const QSet<T> &other)
14649 QSet<T> copy1(*this);
14650 QSet<T> copy2(other);
14651 typename QSet<T>::const_iterator i = copy1.constEnd();
14652 while (i != copy1.constBegin()) {
14654 if (copy2.contains(*i))
14660 template <typename T>
14661 QList<T> QSet<T>::toList() const
14664 typename QSet<T>::const_iterator i = constBegin();
14665 while (i != constEnd()) {
14672 template <typename T>
14673 QSet<T> QList<T>::toSet() const
14676 result.reserve(size());
14677 for (int i = 0; i < size(); ++i)
14678 result.insert(at(i));
14682 template <typename T>
14683 QSet<T> QSet<T>::fromList(const QList<T> &list)
14685 return list.toSet();
14688 template <typename T>
14689 QList<T> QList<T>::fromSet(const QSet<T> &set)
14691 return set.toList();
14694 template <class T> class QSetIterator { typedef typename QSet<T>::const_iterator const_iterator; QSet<T> c; const_iterator i; public: inline QSetIterator(const QSet<T> &container) : c(container), i(c.constBegin()) {} inline QSetIterator &operator=(const QSet<T> &container) { c = container; i = c.constBegin(); return *this; } inline void toFront() { i = c.constBegin(); } inline void toBack() { i = c.constEnd(); } inline bool hasNext() const { return i != c.constEnd(); } inline const T &next() { return *i++; } inline const T &peekNext() const { return *i; } inline bool hasPrevious() const { return i != c.constBegin(); } inline const T &previous() { return *--i; } inline const T &peekPrevious() const { const_iterator p = i; return *--p; } inline bool findNext(const T &t) { while (i != c.constEnd()) if (*i++ == t) return true; return false; } inline bool findPrevious(const T &t) { while (i != c.constBegin()) if (*(--i) == t) return true; return false; } };
14696 template <typename T>
14697 class QMutableSetIterator
14699 typedef typename QSet<T>::iterator iterator;
14702 inline bool item_exists() const { return n != c->constEnd(); }
14705 inline QMutableSetIterator(QSet<T> &container)
14707 { c->setSharable(false); i = c->begin(); n = c->end(); }
14708 inline ~QMutableSetIterator()
14709 { c->setSharable(true); }
14710 inline QMutableSetIterator &operator=(QSet<T> &container)
14711 { c->setSharable(true); c = &container; c->setSharable(false);
14712 i = c->begin(); n = c->end(); return *this; }
14713 inline void toFront() { i = c->begin(); n = c->end(); }
14714 inline void toBack() { i = c->end(); n = i; }
14715 inline bool hasNext() const { return c->constEnd() != i; }
14716 inline const T &next() { n = i++; return *n; }
14717 inline const T &peekNext() const { return *i; }
14718 inline bool hasPrevious() const { return c->constBegin() != i; }
14719 inline const T &previous() { n = --i; return *n; }
14720 inline const T &peekPrevious() const { iterator p = i; return *--p; }
14721 inline void remove()
14722 { if (c->constEnd() != n) { i = c->erase(n); n = c->end(); } }
14723 inline const T &value() const { do {if(!(item_exists()))qt_assert("item_exists()","/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/tools/qset.h",333);} while (0); return *n; }
14724 inline bool findNext(const T &t)
14725 { while (c->constEnd() != (n = i)) if (*i++ == t) return true; return false; }
14726 inline bool findPrevious(const T &t)
14727 { while (c->constBegin() != i) if (*(n = --i) == t) return true;
14728 n = c->end(); return false; }
14732 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qset.h" 2
14733 # 51 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h" 2
14737 typedef QtValidLicenseForCoreModule QtCoreModule;
14742 Stream(QIODevice *device) : ts(device), ref(1), type(QtDebugMsg), space(true), message_output(false) {}
14743 Stream(QString *string) : ts(string, QIODevice::WriteOnly), ref(1), type(QtDebugMsg), space(true), message_output(false) {}
14744 Stream(QtMsgType t) : ts(&buffer, QIODevice::WriteOnly), ref(1), type(t), space(true), message_output(true) {}
14750 bool message_output;
14753 inline QDebug(QIODevice *device) : stream(new Stream(device)) {}
14754 inline QDebug(QString *string) : stream(new Stream(string)) {}
14755 inline QDebug(QtMsgType t) : stream(new Stream(t)) {}
14756 inline QDebug(const QDebug &o):stream(o.stream) { ++stream->ref; }
14757 inline QDebug &operator=(const QDebug &other);
14759 if (!--stream->ref) {
14760 if(stream->message_output)
14761 qt_message_output(stream->type, stream->buffer.toLocal8Bit().data());
14765 inline QDebug &space() { stream->space = true; stream->ts << " "; return *this; }
14766 inline QDebug &nospace() { stream->space = false; return *this; }
14767 inline QDebug &maybeSpace() { if (stream->space) stream->ts << " "; return *this; }
14769 inline QDebug &operator<<(QChar t) { stream->ts << "\'" << t << "\'"; return maybeSpace(); }
14770 inline QDebug &operator<<(bool t) { stream->ts << (t ? "true" : "false"); return maybeSpace(); }
14771 inline QDebug &operator<<(char t) { stream->ts << t; return maybeSpace(); }
14772 inline QDebug &operator<<(signed short t) { stream->ts << t; return maybeSpace(); }
14773 inline QDebug &operator<<(unsigned short t) { stream->ts << t; return maybeSpace(); }
14774 inline QDebug &operator<<(signed int t) { stream->ts << t; return maybeSpace(); }
14775 inline QDebug &operator<<(unsigned int t) { stream->ts << t; return maybeSpace(); }
14776 inline QDebug &operator<<(signed long t) { stream->ts << t; return maybeSpace(); }
14777 inline QDebug &operator<<(unsigned long t) { stream->ts << t; return maybeSpace(); }
14778 inline QDebug &operator<<(qint64 t)
14779 { stream->ts << QString::number(t); return maybeSpace(); }
14780 inline QDebug &operator<<(quint64 t)
14781 { stream->ts << QString::number(t); return maybeSpace(); }
14782 inline QDebug &operator<<(float t) { stream->ts << t; return maybeSpace(); }
14783 inline QDebug &operator<<(double t) { stream->ts << t; return maybeSpace(); }
14784 inline QDebug &operator<<(const char* t) { stream->ts << QString::fromAscii(t); return maybeSpace(); }
14785 inline QDebug &operator<<(const QString & t) { stream->ts << "\"" << t << "\""; return maybeSpace(); }
14786 inline QDebug &operator<<(const QLatin1String &t) { stream->ts << "\"" << t.latin1() << "\""; return maybeSpace(); }
14787 inline QDebug &operator<<(const QByteArray & t) { stream->ts << "\"" << t << "\""; return maybeSpace(); }
14788 inline QDebug &operator<<(const void * t) { stream->ts << t; return maybeSpace(); }
14789 inline QDebug &operator<<(QTextStreamFunction f) {
14794 inline QDebug &operator<<(QTextStreamManipulator m)
14795 { stream->ts << m; return *this; }
14798 inline QDebug qWarning() { return QDebug(QtWarningMsg); }
14799 inline QDebug qCritical() { return QDebug(QtCriticalMsg); }
14801 inline QDebug &QDebug::operator=(const QDebug &other)
14803 if (this != &other) {
14804 QDebug copy(other);
14805 qSwap(stream, copy.stream);
14815 inline QDebug operator<<(QDebug debug, const QList<T> &list)
14818 debug.nospace() << "(";
14819 for (typename QList<T>::size_type i = 0; i < list.count(); ++i) {
14822 debug << list.at(i);
14825 return debug.space();
14832 template <typename T>
14833 inline QDebug operator<<(QDebug debug, const QVector<T> &vec)
14836 debug.nospace() << "QVector";
14837 return operator<<(debug, vec.toList());
14844 template <class aKey, class aT>
14845 inline QDebug operator<<(QDebug debug, const QMap<aKey, aT> &map)
14848 debug.nospace() << "QMap(";
14849 for (typename QMap<aKey, aT>::const_iterator it = map.constBegin();
14850 it != map.constEnd(); ++it) {
14851 debug << "(" << it.key() << ", " << it.value() << ")";
14854 return debug.space();
14861 template <class aKey, class aT>
14862 inline QDebug operator<<(QDebug debug, const QHash<aKey, aT> &hash)
14865 debug.nospace() << "QHash(";
14866 for (typename QHash<aKey, aT>::const_iterator it = hash.constBegin();
14867 it != hash.constEnd(); ++it)
14868 debug << "(" << it.key() << ", " << it.value() << ")";
14870 return debug.space();
14877 template <class T1, class T2>
14878 inline QDebug operator<<(QDebug debug, const QPair<T1, T2> &pair)
14881 debug.nospace() << "QPair(" << pair.first << "," << pair.second << ")";
14882 return debug.space();
14885 template <typename T>
14886 inline QDebug operator<<(QDebug debug, const QSet<T> &set)
14888 debug.nospace() << "QSet";
14889 return operator<<(debug, set.toList());
14893 inline QDebug qDebug() { return QDebug(QtDebugMsg); }
14894 # 244 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/../../src/corelib/io/qdebug.h"
14896 # 1 "/var/tmp/portage/x11-libs/qt-4.3.2/work/qt-x11-opensource-src-4.3.2/include/QtCore/qdebug.h" 2
14897 # 48 "generators/unix/unixmake2.cpp" 2
14898 # 1 "/usr/include/time.h" 1 3 4
14906 # 1 "/usr/include/gentoo-multilib/amd64/time.h" 1 3 4
14907 # 29 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
14908 # 1 "/usr/include/features.h" 1 3 4
14909 # 30 "/usr/include/gentoo-multilib/amd64/time.h" 2 3 4
14919 # 1 "/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/stddef.h" 1 3 4
14920 # 40 "/usr/include/gentoo-multilib/amd64/time.h" 2 3 4
14924 # 1 "/usr/include/bits/time.h" 1 3 4
14932 # 1 "/usr/include/gentoo-multilib/amd64/bits/time.h" 1 3 4
14933 # 9 "/usr/include/bits/time.h" 2 3 4
14934 # 44 "/usr/include/gentoo-multilib/amd64/time.h" 2 3 4
14935 # 132 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
14951 long int tm_gmtoff;
14952 __const char *tm_zone;
14968 struct timespec it_interval;
14969 struct timespec it_value;
14974 # 181 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
14978 extern clock_t clock (void) throw ();
14981 extern time_t time (time_t *__timer) throw ();
14984 extern double difftime (time_t __time1, time_t __time0)
14985 throw () __attribute__ ((__const__));
14988 extern time_t mktime (struct tm *__tp) throw ();
14994 extern size_t strftime (char *__restrict __s, size_t __maxsize,
14995 __const char *__restrict __format,
14996 __const struct tm *__restrict __tp) throw ();
15002 extern char *strptime (__const char *__restrict __s,
15003 __const char *__restrict __fmt, struct tm *__tp)
15010 # 1 "/usr/include/xlocale.h" 1 3 4
15011 # 217 "/usr/include/gentoo-multilib/amd64/time.h" 2 3 4
15013 extern size_t strftime_l (char *__restrict __s, size_t __maxsize,
15014 __const char *__restrict __format,
15015 __const struct tm *__restrict __tp,
15016 __locale_t __loc) throw ();
15018 extern char *strptime_l (__const char *__restrict __s,
15019 __const char *__restrict __fmt, struct tm *__tp,
15020 __locale_t __loc) throw ();
15027 extern struct tm *gmtime (__const time_t *__timer) throw ();
15031 extern struct tm *localtime (__const time_t *__timer) throw ();
15037 extern struct tm *gmtime_r (__const time_t *__restrict __timer,
15038 struct tm *__restrict __tp) throw ();
15042 extern struct tm *localtime_r (__const time_t *__restrict __timer,
15043 struct tm *__restrict __tp) throw ();
15049 extern char *asctime (__const struct tm *__tp) throw ();
15052 extern char *ctime (__const time_t *__timer) throw ();
15060 extern char *asctime_r (__const struct tm *__restrict __tp,
15061 char *__restrict __buf) throw ();
15064 extern char *ctime_r (__const time_t *__restrict __timer,
15065 char *__restrict __buf) throw ();
15070 extern char *__tzname[2];
15071 extern int __daylight;
15072 extern long int __timezone;
15077 extern char *tzname[2];
15081 extern void tzset (void) throw ();
15085 extern int daylight;
15086 extern long int timezone;
15092 extern int stime (__const time_t *__when) throw ();
15093 # 312 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
15094 extern time_t timegm (struct tm *__tp) throw ();
15097 extern time_t timelocal (struct tm *__tp) throw ();
15100 extern int dysize (int __year) throw () __attribute__ ((__const__));
15101 # 327 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
15102 extern int nanosleep (__const struct timespec *__requested_time,
15103 struct timespec *__remaining);
15107 extern int clock_getres (clockid_t __clock_id, struct timespec *__res) throw ();
15110 extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) throw ();
15113 extern int clock_settime (clockid_t __clock_id, __const struct timespec *__tp)
15121 extern int clock_nanosleep (clockid_t __clock_id, int __flags,
15122 __const struct timespec *__req,
15123 struct timespec *__rem);
15126 extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) throw ();
15131 extern int timer_create (clockid_t __clock_id,
15132 struct sigevent *__restrict __evp,
15133 timer_t *__restrict __timerid) throw ();
15136 extern int timer_delete (timer_t __timerid) throw ();
15139 extern int timer_settime (timer_t __timerid, int __flags,
15140 __const struct itimerspec *__restrict __value,
15141 struct itimerspec *__restrict __ovalue) throw ();
15144 extern int timer_gettime (timer_t __timerid, struct itimerspec *__value)
15148 extern int timer_getoverrun (timer_t __timerid) throw ();
15149 # 389 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
15150 extern int getdate_err;
15151 # 398 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
15152 extern struct tm *getdate (__const char *__string);
15153 # 412 "/usr/include/gentoo-multilib/amd64/time.h" 3 4
15154 extern int getdate_r (__const char *__restrict __string,
15155 struct tm *__restrict __resbufp);
15159 # 9 "/usr/include/time.h" 2 3 4
15160 # 49 "generators/unix/unixmake2.cpp" 2
15162 UnixMakefileGenerator::UnixMakefileGenerator() : MakefileGenerator(), init_flag(false), include_deps(false)
15168 UnixMakefileGenerator::writePrlFile(QTextStream &t)
15170 MakefileGenerator::writePrlFile(t);
15173 if(project->isActiveConfig("create_libtool") && project->first("TEMPLATE") == "lib") {
15174 if(project->isActiveConfig("compile_libtool"))
15175 warn_msg(WarnLogic, "create_libtool specified with compile_libtool can lead to conflicting .la\n"
15176 "formats, create_libtool has been disabled\n");
15178 writeLibtoolFile();
15181 if(project->isActiveConfig("create_pc") && project->first("TEMPLATE") == "lib")
15182 writePkgConfigFile();
15186 UnixMakefileGenerator::writeMakefile(QTextStream &t)
15190 if(!project->values("QMAKE_FAILED_REQUIREMENTS").isEmpty()) {
15191 t << "QMAKE = " << (project->isEmpty("QMAKE_QMAKE") ? QString("qmake") : var("QMAKE_QMAKE")) << endl;
15192 QStringList &qut = project->values("QMAKE_EXTRA_TARGETS");
15193 for(QStringList::ConstIterator it = qut.begin(); it != qut.end(); ++it)
15195 t << "first all clean install distclean uninstall qmake_all:" << "\n\t"
15196 << "@echo \"Some of the required modules ("
15197 << var("QMAKE_FAILED_REQUIREMENTS") << ") are not available.\"" << "\n\t"
15198 << "@echo \"Skipped.\"" << endl << endl;
15200 if(project->isEmpty("QMAKE_NOFORCE"))
15201 t << "FORCE:" << endl << endl;
15205 if (project->values("TEMPLATE").first() == "app" ||
15206 project->values("TEMPLATE").first() == "lib") {
15207 if(Option::mkfile::do_stub_makefile && MakefileGenerator::writeStubMakefile(t))
15210 return MakefileGenerator::writeMakefile(t);
15211 } else if(project->values("TEMPLATE").first() == "subdirs") {
15212 MakefileGenerator::writeSubDirs(t);
15219 UnixMakefileGenerator::writeMakeParts(QTextStream &t)
15221 QString deps = fileFixify(Option::output.fileName()), target_deps, prl;
15222 bool do_incremental = (project->isActiveConfig("incremental") &&
15223 !project->values("QMAKE_INCREMENTAL").isEmpty() &&
15224 (!project->values("QMAKE_APP_FLAG").isEmpty() ||
15225 (!project->isActiveConfig("staticlib")))),
15226 src_incremental=false;
15228 t << "####### Compiler, tools and options" << endl << endl;
15229 t << "CC = " << var("QMAKE_CC") << endl;
15230 t << "CXX = " << var("QMAKE_CXX") << endl;
15232 << varGlue("PRL_EXPORT_DEFINES","-D"," -D"," ")
15233 << varGlue("DEFINES","-D"," -D","") << endl;
15234 t << "CFLAGS = " << var("QMAKE_CFLAGS") << " $(DEFINES)" << endl;
15235 t << "CXXFLAGS = " << var("QMAKE_CXXFLAGS") << " $(DEFINES)" << endl;
15236 t << "INCPATH = " << "-I" << specdir();
15237 if(!project->isActiveConfig("no_include_pwd")) {
15238 QString pwd = escapeFilePath(fileFixify(qmake_getpwd()));
15244 const QStringList &incs = project->values("INCLUDEPATH");
15245 for(int i = 0; i < incs.size(); ++i) {
15246 QString inc = escapeFilePath(incs.at(i));
15248 t << " " << "-I" << inc;
15251 if(!project->isEmpty("QMAKE_FRAMEWORKPATH_FLAGS"))
15252 t << " " << var("QMAKE_FRAMEWORKPATH_FLAGS");
15255 if(!project->isActiveConfig("staticlib")) {
15256 t << "LINK = " << var("QMAKE_LINK") << endl;
15257 t << "LFLAGS = " << var("QMAKE_LFLAGS") << endl;
15258 t << "LIBS = " << "$(SUBLIBS) " << var("QMAKE_FRAMEWORKDIR_FLAGS") << " "
15259 << var("QMAKE_LIBDIR_FLAGS") << " " << var("QMAKE_LIBS") << endl;
15262 t << "AR = " << var("QMAKE_AR") << endl;
15263 t << "RANLIB = " << var("QMAKE_RANLIB") << endl;
15264 t << "QMAKE = " << (project->isEmpty("QMAKE_QMAKE") ? QString("qmake") : var("QMAKE_QMAKE")) << endl;
15265 t << "TAR = " << var("QMAKE_TAR") << endl;
15266 t << "COMPRESS = " << var("QMAKE_GZIP") << endl;
15267 if(project->isActiveConfig("compile_libtool"))
15268 t << "LIBTOOL = " << var("QMAKE_LIBTOOL") << endl;
15269 t << "COPY = " << var("QMAKE_COPY") << endl;
15270 t << "SED = " << var("QMAKE_STREAM_EDITOR") << endl;
15271 t << "COPY_FILE = " << var("QMAKE_COPY_FILE") << endl;
15272 t << "COPY_DIR = " << var("QMAKE_COPY_DIR") << endl;
15273 t << "INSTALL_FILE = " << var("QMAKE_INSTALL_FILE") << endl;
15274 t << "INSTALL_DIR = " << var("QMAKE_INSTALL_DIR") << endl;
15275 t << "INSTALL_PROGRAM = " << var("QMAKE_INSTALL_PROGRAM") << endl;
15277 t << "DEL_FILE = " << var("QMAKE_DEL_FILE") << endl;
15278 t << "SYMLINK = " << var("QMAKE_SYMBOLIC_LINK") << endl;
15279 t << "DEL_DIR = " << var("QMAKE_DEL_DIR") << endl;
15280 t << "MOVE = " << var("QMAKE_MOVE") << endl;
15281 t << "CHK_DIR_EXISTS= " << var("QMAKE_CHK_DIR_EXISTS") << endl;
15282 t << "MKDIR = " << var("QMAKE_MKDIR") << endl;
15283 if(!project->isEmpty("QMAKE_MACOSX_DEPLOYMENT_TARGET"))
15284 t << "export MACOSX_DEPLOYMENT_TARGET = "
15285 << project->first("QMAKE_MACOSX_DEPLOYMENT_TARGET") << endl;
15288 t << "####### Output directory" << endl << endl;
15289 if (! project->values("OBJECTS_DIR").isEmpty())
15290 t << "OBJECTS_DIR = " << var("OBJECTS_DIR") << endl;
15292 t << "OBJECTS_DIR = ./" << endl;
15296 t << "####### Files" << endl << endl;
15297 t << "SOURCES = " << valList(escapeFilePaths(project->values("SOURCES"))) << " "
15298 << valList(escapeFilePaths(project->values("GENERATED_SOURCES"))) << endl;
15299 if(do_incremental) {
15300 QStringList &objs = project->values("OBJECTS"), &incrs = project->values("QMAKE_INCREMENTAL"), incrs_out;
15302 for(QStringList::Iterator objit = objs.begin(); objit != objs.end(); ++objit) {
15303 bool increment = false;
15304 for(QStringList::Iterator incrit = incrs.begin(); incrit != incrs.end(); ++incrit) {
15305 if((*objit).indexOf(QRegExp((*incrit), Qt::CaseSensitive,
15306 QRegExp::Wildcard)) != -1) {
15308 incrs_out.append((*objit));
15313 t << "\\\n\t\t" << (*objit);
15315 if(incrs_out.count() == objs.count()) {
15316 t << escapeFilePaths(incrs_out).join(" \\\n\t\t") << endl;
15317 } else if(!incrs_out.count()) {
15320 src_incremental = true;
15322 t << "INCREMENTAL_OBJECTS = " << escapeFilePaths(incrs_out).join(" \\\n\t\t") << endl;
15325 t << "OBJECTS = " << valList(escapeFilePaths(project->values("OBJECTS"))) << endl;
15327 if(do_incremental && !src_incremental)
15328 do_incremental = false;
15329 t << "DIST = " << valList(fileFixify(project->values("DISTFILES"))) << endl;
15330 t << "QMAKE_TARGET = " << var("QMAKE_ORIG_TARGET") << endl;
15331 t << "DESTDIR = " << var("DESTDIR") << endl;
15332 if(project->isActiveConfig("compile_libtool"))
15333 t << "TARGETL = " << var("TARGET_la") << endl;
15334 t << "TARGET = " << escapeFilePath(var("TARGET")) << endl;
15335 if(project->isActiveConfig("plugin")) {
15336 t << "TARGETD = " << escapeFilePath(var("TARGET")) << endl;
15337 } else if(!project->isActiveConfig("staticlib") && project->values("QMAKE_APP_FLAG").isEmpty()) {
15338 t << "TARGETA = " << escapeFilePath(var("TARGETA")) << endl;
15339 if(!project->isEmpty("QMAKE_BUNDLE")) {
15340 t << "TARGETD = " << escapeFilePath(var("TARGET_x.y")) << endl;
15341 t << "TARGET0 = " << escapeFilePath(var("TARGET_")) << endl;
15342 } else if(project->isEmpty("QMAKE_HPUX_SHLIB")) {
15343 t << "TARGETD = " << escapeFilePath(var("TARGET_x.y.z")) << endl;
15344 t << "TARGET0 = " << escapeFilePath(var("TARGET_")) << endl;
15345 t << "TARGET1 = " << escapeFilePath(var("TARGET_x")) << endl;
15346 t << "TARGET2 = " << escapeFilePath(var("TARGET_x.y")) << endl;
15348 t << "TARGETD = " << escapeFilePath(var("TARGET_x")) << endl;
15349 t << "TARGET0 = " << escapeFilePath(var("TARGET_")) << endl;
15352 writeExtraCompilerVariables(t);
15353 writeExtraVariables(t);
15357 QStringList &qeui = project->values("QMAKE_EXTRA_INCLUDES");
15358 QStringList::Iterator it;
15359 for(it = qeui.begin(); it != qeui.end(); ++it)
15360 t << "include " << (*it) << endl;
15363 t << "first: all" << endl;
15364 t << "####### Implicit rules" << endl << endl;
15365 t << ".SUFFIXES: " << Option::obj_ext;
15366 for(QStringList::Iterator cit = Option::c_ext.begin(); cit != Option::c_ext.end(); ++cit)
15367 t << " " << (*cit);
15368 for(QStringList::Iterator cppit = Option::cpp_ext.begin(); cppit != Option::cpp_ext.end(); ++cppit)
15369 t << " " << (*cppit);
15371 for(QStringList::Iterator cppit = Option::cpp_ext.begin(); cppit != Option::cpp_ext.end(); ++cppit)
15372 t << (*cppit) << Option::obj_ext << ":\n\t" << var("QMAKE_RUN_CXX_IMP") << endl << endl;
15373 for(QStringList::Iterator cit = Option::c_ext.begin(); cit != Option::c_ext.end(); ++cit)
15374 t << (*cit) << Option::obj_ext << ":\n\t" << var("QMAKE_RUN_CC_IMP") << endl << endl;
15377 QString cmd=var("QMAKE_CFLAGS_DEPS") + " ";
15378 cmd += varGlue("DEFINES","-D"," -D","") + varGlue("PRL_EXPORT_DEFINES"," -D"," -D","");
15379 if(!project->isEmpty("QMAKE_ABSOLUTE_SOURCE_PATH"))
15380 cmd += " -I" + project->first("QMAKE_ABSOLUTE_SOURCE_PATH") + " ";
15381 cmd += " $(INCPATH) " + varGlue("DEPENDPATH", "-I", " -I", "");
15383 if(!project->values("OBJECTS_DIR").isEmpty())
15384 odir = project->first("OBJECTS_DIR");
15385 t << "###### Dependencies" << endl << endl;
15386 t << odir << ".deps/%.d: %.cpp\n\t";
15387 if(project->isActiveConfig("echo_depend_creation"))
15388 t << "@echo Creating depend for $<" << "\n\t";
15389 t << mkdir_p_asstring("$(@D)") << "\n\t"
15390 << "@$(CXX) " << cmd << " $< | sed \"s,^\\($(*F).o\\):," << odir << "\\1:,g\" >$@" << endl << endl;
15392 t << odir << ".deps/%.d: %.c\n\t";
15393 if(project->isActiveConfig("echo_depend_creation"))
15394 t << "@echo Creating depend for $<" << "\n\t";
15395 t << mkdir_p_asstring("$(@D)") << "\n\t"
15396 << "@$(CC) " << cmd << " $< | sed \"s,^\\($(*F).o\\):," << odir << "\\1:,g\" >$@" << endl << endl;
15398 QString src[] = { "SOURCES", "GENERATED_SOURCES", QString() };
15399 for(int x = 0; !src[x].isNull(); x++) {
15400 QStringList &l = project->values(src[x]);
15401 for(QStringList::Iterator it = l.begin(); it != l.end(); ++it) {
15402 if(!(*it).isEmpty()) {
15404 for(QStringList::Iterator cit = Option::c_ext.begin();
15405 cit != Option::c_ext.end(); ++cit) {
15406 if((*it).endsWith((*cit))) {
15407 d_file = (*it).left((*it).length() - (*cit).length());
15411 if(d_file.isEmpty()) {
15412 for(QStringList::Iterator cppit = Option::cpp_ext.begin();
15413 cppit != Option::cpp_ext.end(); ++cppit) {
15414 if((*it).endsWith((*cppit))) {
15415 d_file = (*it).left((*it).length() - (*cppit).length());
15420 if(!d_file.isEmpty()) {
15421 d_file = odir + ".deps/" + d_file + ".d";
15422 QStringList deps = findDependencies((*it)).filter(QRegExp(Option::cpp_moc_ext + "$"));
15423 if(!deps.isEmpty())
15424 t << d_file << ": " << deps.join(" ") << endl;
15425 t << "-include " << d_file << endl;
15426 project->values("QMAKE_DISTCLEAN") += d_file;
15433 t << "####### Build rules" << endl << endl;
15434 if(!project->values("SUBLIBS").isEmpty()) {
15435 QString libdir = "tmp/";
15436 if(!project->isEmpty("SUBLIBS_DIR"))
15437 libdir = project->first("SUBLIBS_DIR");
15439 QStringList &l = project->values("SUBLIBS");
15440 for(QStringList::Iterator it = l.begin(); it != l.end(); ++it)
15441 t << libdir << "lib" << (*it) << ".a ";
15444 if(project->isActiveConfig("depend_prl") && !project->isEmpty("QMAKE_PRL_INTERNAL_FILES")) {
15445 QStringList &l = project->values("QMAKE_PRL_INTERNAL_FILES");
15446 QStringList::Iterator it;
15447 for(it = l.begin(); it != l.end(); ++it) {
15448 QMakeMetaInfo libinfo;
15449 if(libinfo.readLib((*it)) && !libinfo.isEmpty("QMAKE_PRL_BUILD_DIR")) {
15451 int slsh = (*it).lastIndexOf(Option::dir_sep);
15453 dir = (*it).left(slsh + 1);
15454 QString targ = dir + libinfo.first("QMAKE_PRL_TARGET");
15455 target_deps += " " + targ;
15456 t << targ << ":" << "\n\t"
15457 << "@echo \"Creating '" << targ << "'\"" << "\n\t"
15458 << "(cd " << libinfo.first("QMAKE_PRL_BUILD_DIR") << ";"
15459 << "$(MAKE))" << endl;
15463 if(!project->values("QMAKE_APP_FLAG").isEmpty()) {
15464 QString destdir = project->first("DESTDIR");
15465 if(!project->isEmpty("QMAKE_BUNDLE")) {
15466 QString bundle_loc = project->first("QMAKE_BUNDLE_LOCATION");
15467 if(!bundle_loc.isEmpty() && !bundle_loc.startsWith("/"))
15468 bundle_loc.prepend("/");
15469 if(!bundle_loc.endsWith("/"))
15471 destdir += project->first("QMAKE_BUNDLE") + bundle_loc;
15473 if(do_incremental) {
15475 QString incr_target = var("TARGET") + "_incremental";
15476 if(incr_target.indexOf(Option::dir_sep) != -1)
15477 incr_target = incr_target.right(incr_target.length() -
15478 (incr_target.lastIndexOf(Option::dir_sep) + 1));
15479 QString incr_deps, incr_objs;
15480 if(project->first("QMAKE_INCREMENTAL_STYLE") == "ld") {
15481 QString incr_target_dir = var("OBJECTS_DIR") + incr_target + Option::obj_ext;
15483 t << incr_target_dir << ": $(OBJECTS)" << "\n\t"
15484 << "ld -r -o "<< incr_target_dir << " $(OBJECTS)" << endl;
15486 deps.prepend(incr_target_dir + " ");
15487 incr_deps = "$(INCREMENTAL_OBJECTS)";
15488 if(!incr_objs.isEmpty())
15490 incr_objs += incr_target_dir;
15493 QString incr_target_dir = var("DESTDIR") + "lib" + incr_target + "." +
15494 project->values("QMAKE_EXTENSION_SHLIB").first();
15495 QString incr_lflags = var("QMAKE_LFLAGS_SHLIB") + " ";
15496 if(project->isActiveConfig("debug"))
15497 incr_lflags += var("QMAKE_LFLAGS_DEBUG");
15499 incr_lflags += var("QMAKE_LFLAGS_RELEASE");
15500 t << incr_target_dir << ": $(INCREMENTAL_OBJECTS)" << "\n\t";
15501 if(!destdir.isEmpty())
15502 t << "\n\t" << mkdir_p_asstring(destdir) << "\n\t";
15503 t << "$(LINK) " << incr_lflags << " -o "<< incr_target_dir <<
15504 " $(INCREMENTAL_OBJECTS)" << endl;
15506 if(!destdir.isEmpty()) {
15507 if(!incr_objs.isEmpty())
15509 incr_objs += "-L" + destdir;
15511 if(!incr_objs.isEmpty())
15513 incr_objs += "-L" + qmake_getpwd();
15515 if(!incr_objs.isEmpty())
15517 incr_objs += " -l" + incr_target;
15518 deps.prepend(incr_target_dir + " ");
15519 incr_deps = "$(OBJECTS)";
15521 t << "all: " << deps << " " << valGlue(escapeFilePaths(project->values("ALL_DEPS")),""," "," ") << "$(TARGET)"
15525 t << var("TARGET") << ": " << var("PRE_TARGETDEPS") << " " << incr_deps << " " << target_deps
15526 << " " << var("POST_TARGETDEPS") << "\n\t";
15527 if(!destdir.isEmpty())
15528 t << "\n\t" << mkdir_p_asstring(destdir) << "\n\t";
15529 if(!project->isEmpty("QMAKE_PRE_LINK"))
15530 t << var("QMAKE_PRE_LINK") << "\n\t";
15531 t << "$(LINK) $(LFLAGS) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS)";
15532 if(!project->isEmpty("QMAKE_POST_LINK"))
15533 t << "\n\t" << var("QMAKE_POST_LINK");
15536 t << "all: " << deps << " " << valGlue(escapeFilePaths(project->values("ALL_DEPS")),""," "," ") << "$(TARGET)"
15539 t << "$(TARGET): " << var("PRE_TARGETDEPS") << " $(OBJECTS) "
15540 << target_deps << " " << var("POST_TARGETDEPS") << "\n\t";
15541 if(!destdir.isEmpty())
15542 t << mkdir_p_asstring(destdir) << "\n\t";
15543 if(!project->isEmpty("QMAKE_PRE_LINK"))
15544 t << var("QMAKE_PRE_LINK") << "\n\t";
15545 t << "$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)";
15546 if(!project->isEmpty("QMAKE_POST_LINK"))
15547 t << "\n\t" << var("QMAKE_POST_LINK");
15550 } else if(!project->isActiveConfig("staticlib")) {
15551 QString destdir = unescapeFilePath(project->first("DESTDIR")), incr_deps;
15552 if(!project->isEmpty("QMAKE_BUNDLE")) {
15553 QString bundle_loc = project->first("QMAKE_BUNDLE_LOCATION");
15554 if(!bundle_loc.isEmpty() && !bundle_loc.startsWith("/"))
15555 bundle_loc.prepend("/");
15556 if(!bundle_loc.endsWith("/"))
15558 destdir += project->first("QMAKE_BUNDLE") + bundle_loc;
15560 destdir = escapeFilePath(destdir);
15562 if(do_incremental) {
15563 QString s_ext = project->values("QMAKE_EXTENSION_SHLIB").first();
15564 QString incr_target = var("QMAKE_ORIG_TARGET").replace(
15565 QRegExp("\\." + s_ext), "").replace(QRegExp("^lib"), "") + "_incremental";
15566 if(incr_target.indexOf(Option::dir_sep) != -1)
15567 incr_target = incr_target.right(incr_target.length() -
15568 (incr_target.lastIndexOf(Option::dir_sep) + 1));
15569 incr_target = escapeFilePath(incr_target);
15571 if(project->first("QMAKE_INCREMENTAL_STYLE") == "ld") {
15572 QString incr_target_dir = escapeFilePath(var("OBJECTS_DIR") + incr_target + Option::obj_ext);
15574 const QString link_deps = "$(OBJECTS) ";
15575 t << incr_target_dir << ": " << link_deps << "\n\t"
15576 << "ld -r -o " << incr_target_dir << " " << link_deps << endl;
15578 QStringList &cmd = project->values("QMAKE_LINK_SHLIB_CMD");
15579 cmd.first().replace("$(OBJECTS) ", "$(INCREMENTAL_OBJECTS)");
15580 cmd.append(incr_target_dir);
15581 deps.prepend(incr_target_dir + " ");
15582 incr_deps = "$(INCREMENTAL_OBJECTS)";
15585 QString incr_target_dir = escapeFilePath(destdir + "lib" + incr_target + "." + s_ext);
15586 QString incr_lflags = var("QMAKE_LFLAGS_SHLIB") + " ";
15587 if(!project->isEmpty("QMAKE_LFLAGS_INCREMENTAL"))
15588 incr_lflags += var("QMAKE_LFLAGS_INCREMENTAL") + " ";
15589 if(project->isActiveConfig("debug"))
15590 incr_lflags += var("QMAKE_LFLAGS_DEBUG");
15592 incr_lflags += var("QMAKE_LFLAGS_RELEASE");
15593 t << incr_target_dir << ": $(INCREMENTAL_OBJECTS)" << "\n\t";
15594 if(!destdir.isEmpty())
15595 t << mkdir_p_asstring(destdir) << "\n\t";
15596 t << "$(LINK) " << incr_lflags << " -o "<< incr_target_dir <<
15597 " $(INCREMENTAL_OBJECTS)" << endl;
15599 QStringList &cmd = project->values("QMAKE_LINK_SHLIB_CMD");
15600 if(!destdir.isEmpty())
15601 cmd.append(" -L" + destdir);
15602 cmd.append(" -l" + incr_target);
15603 deps.prepend(incr_target_dir + " ");
15604 incr_deps = "$(OBJECTS)";
15607 t << "all: " << " " << deps << " " << valGlue(escapeFilePaths(project->values("ALL_DEPS")),""," "," ")
15608 << " " << destdir << "$(TARGET)" << endl << endl;
15611 t << destdir << "$(TARGET): " << var("PRE_TARGETDEPS") << " "
15612 << incr_deps << " $(SUBLIBS) " << target_deps << " " << var("POST_TARGETDEPS");
15614 t << "all: " << deps << " " << valGlue(escapeFilePaths(project->values("ALL_DEPS")),""," "," ") << " " <<
15615 destdir << "$(TARGET)" << endl << endl;
15616 t << destdir << "$(TARGET): " << var("PRE_TARGETDEPS")
15617 << " $(OBJECTS) $(SUBLIBS) $(OBJCOMP) " << target_deps
15618 << " " << var("POST_TARGETDEPS");
15620 if(!destdir.isEmpty())
15621 t << "\n\t" << mkdir_p_asstring(destdir);
15622 if(!project->isEmpty("QMAKE_PRE_LINK"))
15623 t << "\n\t" << var("QMAKE_PRE_LINK");
15625 if(project->isActiveConfig("compile_libtool")) {
15627 << var("QMAKE_LINK_SHLIB_CMD");
15628 } else if(project->isActiveConfig("plugin")) {
15630 << "-$(DEL_FILE) $(TARGET)" << "\n\t"
15631 << var("QMAKE_LINK_SHLIB_CMD");
15632 if(!destdir.isEmpty())
15634 << "-$(MOVE) $(TARGET) " << destdir;
15635 if(!project->isEmpty("QMAKE_POST_LINK"))
15636 t << "\n\t" << var("QMAKE_POST_LINK") << "\n\t";
15638 } else if(!project->isEmpty("QMAKE_BUNDLE")) {
15640 << "-$(DEL_FILE) $(TARGET) $(TARGET0) $(DESTDIR)$(TARGET0)" << "\n\t"
15641 << var("QMAKE_LINK_SHLIB_CMD") << "\n\t"
15642 << mkdir_p_asstring("\"`dirname $(DESTDIR)$(TARGETD)`\"", false) << "\n\t"
15643 << "-$(MOVE) $(TARGET) $(DESTDIR)$(TARGETD)" << "\n\t"
15644 << mkdir_p_asstring("\"`dirname $(DESTDIR)$(TARGET0)`\"", false) << "\n\t"
15645 << varGlue("QMAKE_LN_SHLIB","-"," "," Versions/" +
15646 project->first("QMAKE_FRAMEWORK_VERSION") +
15647 "/$(TARGET) $(DESTDIR)$(TARGET0)") << "\n\t"
15648 << "-$(DEL_FILE) " << destdir << "Versions/Current" << "\n\t"
15649 << varGlue("QMAKE_LN_SHLIB","-"," ", " " + project->first("QMAKE_FRAMEWORK_VERSION") +
15650 " " + destdir + "Versions/Current") << "\n\t";
15651 if(!project->isEmpty("QMAKE_POST_LINK"))
15652 t << "\n\t" << var("QMAKE_POST_LINK");
15654 } else if(project->isEmpty("QMAKE_HPUX_SHLIB")) {
15656 << "-$(DEL_FILE) $(TARGET) $(TARGET0) $(TARGET1) $(TARGET2)" << "\n\t"
15657 << var("QMAKE_LINK_SHLIB_CMD") << "\n\t";
15658 t << varGlue("QMAKE_LN_SHLIB","-"," "," $(TARGET) $(TARGET0)") << "\n\t"
15659 << varGlue("QMAKE_LN_SHLIB","-"," "," $(TARGET) $(TARGET1)") << "\n\t"
15660 << varGlue("QMAKE_LN_SHLIB","-"," "," $(TARGET) $(TARGET2)");
15661 if(!destdir.isEmpty())
15663 << "-$(DEL_FILE) " << destdir << "$(TARGET)\n\t"
15664 << "-$(DEL_FILE) " << destdir << "$(TARGET0)\n\t"
15665 << "-$(DEL_FILE) " << destdir << "$(TARGET1)\n\t"
15666 << "-$(DEL_FILE) " << destdir << "$(TARGET2)\n\t"
15667 << "-$(MOVE) $(TARGET) $(TARGET0) $(TARGET1) $(TARGET2) " << destdir;
15668 if(!project->isEmpty("QMAKE_POST_LINK"))
15669 t << "\n\t" << var("QMAKE_POST_LINK");
15673 << "-$(DEL_FILE) $(TARGET) $(TARGET0)" << "\n\t"
15674 << var("QMAKE_LINK_SHLIB_CMD") << "\n\t";
15675 t << varGlue("QMAKE_LN_SHLIB",""," "," $(TARGET) $(TARGET0)");
15676 if(!destdir.isEmpty())
15678 << "-$(DEL_FILE) " << destdir << "$(TARGET)\n\t"
15679 << "-$(DEL_FILE) " << destdir << "$(TARGET0)\n\t"
15680 << "-$(MOVE) $(TARGET) $(TARGET0) " << destdir;
15681 if(!project->isEmpty("QMAKE_POST_LINK"))
15682 t << "\n\t" << var("QMAKE_POST_LINK");
15687 if (! project->isActiveConfig("plugin")) {
15688 t << "staticlib: $(TARGETA)" << endl << endl;
15689 t << "$(TARGETA): " << var("PRE_TARGETDEPS") << " $(OBJECTS) $(OBJCOMP)";
15691 t << " $(INCREMENTAL_OBJECTS)";
15692 t << " " << var("POST_TARGETDEPS") << "\n\t"
15693 << "-$(DEL_FILE) $(TARGETA) " << "\n\t"
15694 << var("QMAKE_AR_CMD");
15696 t << " $(INCREMENTAL_OBJECTS)";
15697 if(!project->isEmpty("QMAKE_RANLIB"))
15698 t << "\n\t" << "$(RANLIB) $(TARGETA)";
15702 QString destdir = project->first("DESTDIR");
15703 t << "all: " << deps << " " << valGlue(escapeFilePaths(project->values("ALL_DEPS")),""," "," ") << destdir << "$(TARGET) "
15704 << varGlue("QMAKE_AR_SUBLIBS", destdir, " " + destdir, "") << "\n\n"
15705 << "staticlib: " << destdir << "$(TARGET)" << "\n\n";
15706 if(project->isEmpty("QMAKE_AR_SUBLIBS")) {
15707 t << destdir << "$(TARGET): " << var("PRE_TARGETDEPS")
15708 << " $(OBJECTS) $(OBJCOMP) " << var("POST_TARGETDEPS") << "\n\t";
15709 if(!destdir.isEmpty())
15710 t << mkdir_p_asstring(destdir) << "\n\t";
15711 t << "-$(DEL_FILE) $(TARGET)" << "\n\t"
15712 << var("QMAKE_AR_CMD") << "\n";
15713 if(!project->isEmpty("QMAKE_POST_LINK"))
15714 t << "\t" << var("QMAKE_POST_LINK") << "\n";
15715 if(!project->isEmpty("QMAKE_RANLIB"))
15716 t << "\t" << "$(RANLIB) $(TARGET)" << "\n";
15717 if(!destdir.isEmpty())
15718 t << "\t" << "-$(DEL_FILE) " << destdir << "$(TARGET)" << "\n"
15719 << "\t" << "-$(MOVE) $(TARGET) " << destdir << "\n";
15721 int max_files = project->first("QMAKE_MAX_FILES_PER_AR").toInt();
15722 QStringList objs = project->values("OBJECTS") + project->values("OBJCOMP"),
15723 libs = project->values("QMAKE_AR_SUBLIBS");
15724 libs.prepend("$(TARGET)");
15725 for(QStringList::Iterator libit = libs.begin(), objit = objs.begin();
15726 libit != libs.end(); ++libit) {
15728 for(int cnt = 0; cnt < max_files && objit != objs.end(); ++objit, cnt++)
15731 if((*libit) == "$(TARGET)") {
15732 t << destdir << "$(TARGET): " << var("PRE_TARGETDEPS")
15733 << " " << var("POST_TARGETDEPS") << valList(build) << "\n\t";
15734 ar = project->values("QMAKE_AR_CMD").first();
15735 ar = ar.replace("$(OBJECTS)", build.join(" "));
15737 t << (*libit) << ": " << valList(build) << "\n\t";
15738 ar = "$(AR) " + (*libit) + " " + build.join(" ");
15740 if(!destdir.isEmpty())
15741 t << mkdir_p_asstring(destdir) << "\n\t";
15742 t << "-$(DEL_FILE) " << (*libit) << "\n\t"
15744 if(!project->isEmpty("QMAKE_POST_LINK"))
15745 t << "\t" << var("QMAKE_POST_LINK") << "\n";
15746 if(!project->isEmpty("QMAKE_RANLIB"))
15747 t << "\t" << "$(RANLIB) " << (*libit) << "\n";
15748 if(!destdir.isEmpty())
15749 t << "\t" << "-$(DEL_FILE) " << destdir << (*libit) << "\n"
15750 << "\t" << "-$(MOVE) " << (*libit) << " " << destdir << "\n";
15757 if(project->isEmpty("QMAKE_FAILED_REQUIREMENTS") && !project->isActiveConfig("no_autoqmake")) {
15758 QString meta_files;
15759 if(project->isActiveConfig("create_libtool") && project->first("TEMPLATE") == "lib" &&
15760 !project->isActiveConfig("compile_libtool")) {
15761 if(!meta_files.isEmpty())
15763 meta_files += libtoolFileName();
15765 if(project->isActiveConfig("create_pc") && project->first("TEMPLATE") == "lib") {
15766 if(!meta_files.isEmpty())
15768 meta_files += pkgConfigFileName();
15770 if(!meta_files.isEmpty())
15771 t << meta_files << ": " << "\n\t"
15772 << "@$(QMAKE) -prl " << buildArgs() << " " << project->projectFile() << endl;
15775 if(!project->first("QMAKE_PKGINFO").isEmpty()) {
15776 QString pkginfo = escapeFilePath(project->first("QMAKE_PKGINFO"));
15777 QString destdir = escapeFilePath(project->first("DESTDIR") + project->first("QMAKE_BUNDLE") + "/Contents");
15778 t << pkginfo << ": " << "\n\t";
15779 if(!destdir.isEmpty())
15780 t << mkdir_p_asstring(destdir) << "\n\t";
15781 t << "@$(DEL_FILE) " << pkginfo << "\n\t"
15783 << (project->isEmpty("QMAKE_PKGINFO_TYPEINFO") ? QString::fromLatin1("????") : project->first("QMAKE_PKGINFO_TYPEINFO").left(4))
15784 << "\" >" << pkginfo << endl;
15786 if(!project->isEmpty("QMAKE_BUNDLE")) {
15788 QString info_plist = escapeFilePath(fileFixify(project->first("QMAKE_INFO_PLIST"))),
15789 info_plist_out = escapeFilePath(project->first("QMAKE_INFO_PLIST_OUT"));
15790 QString destdir = info_plist_out.section(Option::dir_sep, 0, -2);
15791 t << info_plist_out << ": " << "\n\t";
15792 if(!destdir.isEmpty())
15793 t << mkdir_p_asstring(destdir) << "\n\t";
15794 if(project->first("TEMPLATE") == "app") {
15795 QString icon = fileFixify(var("ICON"));
15796 t << "@$(DEL_FILE) " << info_plist_out << "\n\t"
15798 << "-e \"s,@ICON@," << icon.section(Option::dir_sep, -1) << ",g\" "
15799 << "-e \"s,@EXECUTABLE@," << var("QMAKE_ORIG_TARGET") << ",g\" "
15800 << "-e \"s,@TYPEINFO@,"<< (project->isEmpty("QMAKE_PKGINFO_TYPEINFO") ?
15801 QString::fromLatin1("????") : project->first("QMAKE_PKGINFO_TYPEINFO").left(4)) << ",g\" "
15802 << "" << info_plist << " >" << info_plist_out << endl;
15804 if(!project->isEmpty("ICON")) {
15805 QString dir = project->first("DESTDIR") + project->first("QMAKE_BUNDLE") + "/Contents/Resources/";
15806 const QString icon_path = escapeFilePath(dir + icon.section(Option::dir_sep, -1));
15807 t << icon_path << ": " << icon << "\n\t"
15808 << mkdir_p_asstring(dir) << "\n\t"
15809 << "@$(DEL_FILE) " << icon_path << "\n\t"
15810 << "@$(COPY_FILE) " << escapeFilePath(icon) << " " << icon_path << endl;
15813 t << "@$(DEL_FILE) " << info_plist_out << "\n\t"
15815 << "-e \"s,@LIBRARY@," << var("QMAKE_ORIG_TARGET") << ",g\" "
15816 << "-e \"s,@SHORT_VERSION@," << project->first("VER_MAJ") << "." << project->first("VER_MIN") << ",g\" "
15817 << "-e \"s,@TYPEINFO@,"
15818 << (project->isEmpty("QMAKE_PKGINFO_TYPEINFO") ?
15819 QString::fromLatin1("????") : project->first("QMAKE_PKGINFO_TYPEINFO").left(4)) << ",g\" "
15820 << "" << info_plist << " >" << info_plist_out << endl;
15823 if(!project->isEmpty("QMAKE_BUNDLE_DATA")) {
15824 QString bundle_dir = project->first("DESTDIR") + project->first("QMAKE_BUNDLE") + "/";
15825 const QStringList &bundle_data = project->values("QMAKE_BUNDLE_DATA");
15826 for(int i = 0; i < bundle_data.count(); i++) {
15827 const QStringList &files = project->values(bundle_data[i] + ".files");
15828 QString path = bundle_dir;
15829 if(!project->isEmpty(bundle_data[i] + ".version")) {
15830 QString version = project->first(bundle_data[i] + ".version") + "/" +
15831 project->first("QMAKE_FRAMEWORK_VERSION") + "/";
15832 t << Option::fixPathToLocalOS(path + project->first(bundle_data[i] + ".path")) << ": " << "\n\t"
15833 << mkdir_p_asstring(path) << "\n\t"
15834 << "@$(SYMLINK) " << version << project->first(bundle_data[i] + ".path") << " " << path << endl;
15837 path += project->first(bundle_data[i] + ".path");
15838 path = Option::fixPathToLocalOS(path);
15839 for(int file = 0; file < files.count(); file++) {
15840 const QString dst = path + Option::dir_sep + fileInfo(files[file]).fileName();
15841 t << dst << ": " << files[file] << "\n\t"
15842 << mkdir_p_asstring(path) << "\n\t";
15843 QFileInfo fi(fileInfo(files[file]));
15845 t << "@$(DEL_FILE) -r " << dst << "\n\t"
15846 << "@$(COPY_DIR) " << files[file] << " " << dst << endl;
15848 t << "@$(DEL_FILE) " << dst << "\n\t"
15849 << "@$(COPY_FILE) " << files[file] << " " << dst << endl;
15856 QString packageName(project->first("QMAKE_ORIG_TARGET"));
15857 if(!project->isActiveConfig("no_dist_version"))
15858 packageName += var("VERSION");
15859 if (project->isEmpty("QMAKE_DISTDIR"))
15860 ddir = packageName;
15862 ddir = project->first("QMAKE_DISTDIR");
15864 QString ddir_c = escapeFilePath(fileFixify((project->isEmpty("OBJECTS_DIR") ? QString(".tmp/") :
15865 project->first("OBJECTS_DIR")) + ddir));
15866 t << "dist: " << "\n\t"
15867 << mkdir_p_asstring(ddir_c) << "\n\t"
15868 << "$(COPY_FILE) --parents $(SOURCES) $(DIST) " << ddir_c << Option::dir_sep << " && ";
15869 if(!project->isEmpty("QMAKE_EXTRA_COMPILERS")) {
15870 const QStringList &quc = project->values("QMAKE_EXTRA_COMPILERS");
15871 for(QStringList::ConstIterator it = quc.begin(); it != quc.end(); ++it) {
15872 const QStringList &var = project->values((*it)+".input");
15873 for(QStringList::ConstIterator var_it = var.begin(); var_it != var.end(); ++var_it) {
15874 const QStringList &val = project->values((*var_it));
15877 t << "$(COPY_FILE) --parents " << val.join(" ") << " " << ddir_c << Option::dir_sep << " && ";
15881 if(!project->isEmpty("TRANSLATIONS"))
15882 t << "$(COPY_FILE) --parents " << var("TRANSLATIONS") << " " << ddir_c << Option::dir_sep << " && ";
15883 t << "(cd `dirname " << ddir_c << "` && "
15884 << "$(TAR) " << packageName << ".tar " << ddir << " && "
15885 << "$(COMPRESS) " << packageName << ".tar) && "
15886 << "$(MOVE) `dirname " << ddir_c << "`" << Option::dir_sep << packageName << ".tar.gz . && "
15887 << "$(DEL_FILE) -r " << ddir_c
15892 QString clean_targets = "compiler_clean " + var("CLEAN_DEPS");
15893 if(do_incremental) {
15894 t << "incrclean:" << "\n";
15895 if(src_incremental)
15896 t << "\t-$(DEL_FILE) $(INCREMENTAL_OBJECTS)" << "\n";
15900 t << "clean:" << clean_targets << "\n\t";
15901 if(!project->isEmpty("OBJECTS")) {
15902 if(project->isActiveConfig("compile_libtool"))
15903 t << "-$(LIBTOOL) --mode=clean $(DEL_FILE) $(OBJECTS)" << "\n\t";
15905 t << "-$(DEL_FILE) $(OBJECTS)" << "\n\t";
15907 if(doPrecompiledHeaders() && !project->isEmpty("PRECOMPILED_HEADER")) {
15908 QStringList precomp_files;
15909 QString precomph_out_dir;
15911 if(!project->isEmpty("PRECOMPILED_DIR"))
15912 precomph_out_dir = project->first("PRECOMPILED_DIR");
15913 precomph_out_dir += project->first("QMAKE_ORIG_TARGET") + project->first("QMAKE_PCH_OUTPUT_EXT");
15915 if (project->isActiveConfig("icc_pch_style")) {
15917 QString pchBaseName = project->first("QMAKE_ORIG_TARGET");
15919 if(!project->isEmpty("PRECOMPILED_DIR"))
15920 pchOutput = project->first("PRECOMPILED_DIR");
15921 pchOutput += pchBaseName + project->first("QMAKE_PCH_OUTPUT_EXT");
15922 QString sourceFile = pchOutput + Option::cpp_ext.first();
15923 QString objectFile = createObjectList(QStringList(sourceFile)).first();
15925 precomp_files << precomph_out_dir << sourceFile << objectFile;
15928 precomph_out_dir += Option::dir_sep;
15930 QString header_prefix = project->first("QMAKE_PRECOMP_PREFIX");
15931 if(!project->isEmpty("QMAKE_CFLAGS_PRECOMPILE"))
15932 precomp_files += precomph_out_dir + header_prefix + "c";
15933 if(!project->isEmpty("QMAKE_CXXFLAGS_PRECOMPILE"))
15934 precomp_files += precomph_out_dir + header_prefix + "c++";
15935 if(project->isActiveConfig("objective_c")) {
15936 if(!project->isEmpty("QMAKE_OBJCFLAGS_PRECOMPILE"))
15937 precomp_files += precomph_out_dir + header_prefix + "objective-c";
15938 if(!project->isEmpty("QMAKE_OBJCXXFLAGS_PRECOMPILE"))
15939 precomp_files += precomph_out_dir + header_prefix + "objective-c++";
15942 t << "-$(DEL_FILE) " << precomp_files.join(" ") << "\n\t";
15944 if(!project->isEmpty("IMAGES"))
15945 t << varGlue("QMAKE_IMAGE_COLLECTION", "\t-$(DEL_FILE) ", " ", "") << "\n\t";
15946 if(src_incremental)
15947 t << "-$(DEL_FILE) $(INCREMENTAL_OBJECTS)" << "\n\t";
15948 t << varGlue("QMAKE_CLEAN","-$(DEL_FILE) "," ","\n\t")
15949 << "-$(DEL_FILE) *~ core *.core" << "\n"
15950 << varGlue("CLEAN_FILES","\t-$(DEL_FILE) "," ","") << endl << endl;
15951 t << "####### Sub-libraries" << endl << endl;
15952 if (!project->values("SUBLIBS").isEmpty()) {
15953 QString libdir = "tmp/";
15954 if(!project->isEmpty("SUBLIBS_DIR"))
15955 libdir = project->first("SUBLIBS_DIR");
15956 QStringList &l = project->values("SUBLIBS");
15957 for(it = l.begin(); it != l.end(); ++it)
15958 t << libdir << "lib" << (*it) << ".a" << ":\n\t"
15959 << var(QString("MAKELIB") + (*it)) << endl << endl;
15962 QString destdir = project->first("DESTDIR");
15963 if(!destdir.isEmpty() && destdir.right(1) != Option::dir_sep)
15964 destdir += Option::dir_sep;
15965 t << "distclean: " << "clean\n";
15966 if(!project->isEmpty("QMAKE_BUNDLE")) {
15967 QString bundlePath = escapeFilePath(destdir + project->first("QMAKE_BUNDLE"));
15968 t << "\t-$(DEL_FILE) -r " << bundlePath << endl;
15969 } else if(project->isActiveConfig("compile_libtool")) {
15970 t << "\t-$(LIBTOOL) --mode=clean $(DEL_FILE) " << "$(TARGET)" << endl;
15971 } else if(!project->isActiveConfig("staticlib") && project->values("QMAKE_APP_FLAG").isEmpty() &&
15972 !project->isActiveConfig("plugin")) {
15973 t << "\t-$(DEL_FILE) " << destdir << "$(TARGET)" << " " << endl
15974 << "\t-$(DEL_FILE) " << destdir << "$(TARGET0) " << destdir << "$(TARGET1) "
15975 << destdir << "$(TARGET2) $(TARGETA)" << endl;
15977 t << "\t-$(DEL_FILE) " << "$(TARGET)" << " " << endl;
15979 t << varGlue("QMAKE_DISTCLEAN","\t-$(DEL_FILE) "," ","\n");
15981 QString ofile = Option::fixPathToTargetOS(fileFixify(Option::output.fileName()));
15982 if(!ofile.isEmpty())
15983 t << "\t-$(DEL_FILE) " << ofile << endl;
15987 if(doPrecompiledHeaders() && !project->isEmpty("PRECOMPILED_HEADER")) {
15988 QString pchInput = project->first("PRECOMPILED_HEADER");
15989 t << "###### Prefix headers" << endl;
15990 QString comps[] = { "C", "CXX", "OBJC", "OBJCXX", QString() };
15991 for(int i = 0; !comps[i].isNull(); i++) {
15992 QString pchFlags = var("QMAKE_" + comps[i] + "FLAGS_PRECOMPILE");
15993 if(pchFlags.isEmpty())
15997 if(comps[i] == "OBJC" || comps[i] == "OBJCXX")
15998 cflags += " $(CFLAGS)";
16000 cflags += " $(" + comps[i] + "FLAGS)";
16002 QString pchBaseName = project->first("QMAKE_ORIG_TARGET");
16004 if(!project->isEmpty("PRECOMPILED_DIR"))
16005 pchOutput = project->first("PRECOMPILED_DIR");
16006 pchOutput += pchBaseName + project->first("QMAKE_PCH_OUTPUT_EXT");
16008 if (project->isActiveConfig("icc_pch_style")) {
16010 QString sourceFile = pchOutput + Option::cpp_ext.first();
16011 QString objectFile = createObjectList(QStringList(sourceFile)).first();
16012 t << pchOutput << ": " << pchInput << " " << findDependencies(pchInput).join(" \\\n\t\t")
16013 << "\n\techo \"// Automatically generated, do not modify\" > " << sourceFile
16014 << "\n\trm -f " << pchOutput;
16016 pchFlags = pchFlags.replace("${QMAKE_PCH_TEMP_SOURCE}", sourceFile)
16017 .replace("${QMAKE_PCH_TEMP_OBJECT}", objectFile);
16020 QString header_prefix = project->first("QMAKE_PRECOMP_PREFIX");
16022 pchOutput += Option::dir_sep;
16023 QString pchOutputDir = pchOutput, pchOutputFile;
16025 if(comps[i] == "C") {
16026 pchOutputFile = "c";
16027 } else if(comps[i] == "CXX") {
16028 pchOutputFile = "c++";
16029 } else if(project->isActiveConfig("objective_c")) {
16030 if(comps[i] == "OBJC")
16031 pchOutputFile = "objective-c";
16032 else if(comps[i] == "OBJCXX")
16033 pchOutputFile = "objective-c++";
16035 if(pchOutputFile.isEmpty())
16037 pchOutput += header_prefix + pchOutputFile;
16039 t << pchOutput << ": " << pchInput << " " << findDependencies(pchInput).join(" \\\n\t\t")
16040 << "\n\t" << mkdir_p_asstring(pchOutputDir);
16042 pchFlags = pchFlags.replace("${QMAKE_PCH_INPUT}", pchInput)
16043 .replace("${QMAKE_PCH_OUTPUT_BASE}", pchBaseName)
16044 .replace("${QMAKE_PCH_OUTPUT}", pchOutput);
16047 if(comps[i] == "C" || comps[i] == "OBJC" || comps[i] == "OBJCXX")
16048 compiler = "$(CC)";
16050 compiler = "$(CXX)";
16053 t << "\n\t" << compiler << cflags << " $(INCPATH) " << pchFlags << endl << endl;
16057 writeExtraTargets(t);
16058 writeExtraCompilerTargets(t);
16061 void UnixMakefileGenerator::init2()
16064 if(project->isEmpty("VERSION"))
16065 project->values("VERSION").append("1.0." +
16066 (project->isEmpty("VER_PAT") ? QString("0") :
16067 project->first("VER_PAT")));
16068 QStringList l = project->first("VERSION").split('.');
16070 project->values("VER_MAJ").append(l[0]);
16071 project->values("VER_MIN").append(l[1]);
16072 project->values("VER_PAT").append(l[2]);
16073 if(project->isEmpty("QMAKE_FRAMEWORK_VERSION"))
16074 project->values("QMAKE_FRAMEWORK_VERSION").append(project->values("VER_MAJ").first());
16076 if (!project->values("QMAKE_APP_FLAG").isEmpty()) {
16077 if(!project->isEmpty("QMAKE_BUNDLE")) {
16078 QString bundle_loc = project->first("QMAKE_BUNDLE_LOCATION");
16079 if(!bundle_loc.isEmpty() && !bundle_loc.startsWith("/"))
16080 bundle_loc.prepend("/");
16081 if(!bundle_loc.endsWith("/"))
16083 project->values("TARGET").first().prepend(project->first("QMAKE_BUNDLE") + bundle_loc);
16085 if(!project->isEmpty("TARGET"))
16086 project->values("TARGET").first().prepend(project->first("DESTDIR"));
16087 if (!project->values("QMAKE_CYGWIN_EXE").isEmpty())
16088 project->values("TARGET_EXT").append(".exe");
16089 } else if (project->isActiveConfig("staticlib")) {
16090 project->values("TARGET").first().prepend("lib");
16091 project->values("TARGET").first() += ".a";
16092 if(project->values("QMAKE_AR_CMD").isEmpty())
16093 project->values("QMAKE_AR_CMD").append("$(AR) $(TARGET) $(OBJECTS)");
16095 project->values("TARGETA").append(project->first("DESTDIR") + "lib" + project->first("TARGET") + ".a");
16096 if(project->isActiveConfig("compile_libtool"))
16097 project->values("TARGET_la") = QStringList(project->first("DESTDIR") + "lib" + project->first("TARGET") + Option::libtool_ext);
16099 if (!project->values("QMAKE_AR_CMD").isEmpty())
16100 project->values("QMAKE_AR_CMD").first().replace("(TARGET)","(TARGETA)");
16102 project->values("QMAKE_AR_CMD").append("$(AR) $(TARGETA) $(OBJECTS)");
16103 if(project->isActiveConfig("compile_libtool")) {
16104 project->values("TARGET") = project->values("TARGET_la");
16105 } else if(!project->isEmpty("QMAKE_BUNDLE")) {
16106 QString bundle_loc = project->first("QMAKE_BUNDLE_LOCATION");
16107 if(!bundle_loc.isEmpty() && !bundle_loc.startsWith("/"))
16108 bundle_loc.prepend("/");
16109 if(!bundle_loc.endsWith("/"))
16111 project->values("TARGET_").append(project->first("QMAKE_BUNDLE") +
16112 bundle_loc + unescapeFilePath(project->first("TARGET")));
16113 project->values("TARGET_x.y").append(project->first("QMAKE_BUNDLE") +
16115 project->first("QMAKE_FRAMEWORK_VERSION") +
16116 bundle_loc + unescapeFilePath(project->first("TARGET")));
16117 } else if(project->isActiveConfig("plugin")) {
16119 if(!project->isActiveConfig("no_plugin_name_prefix"))
16121 project->values("TARGET_x.y.z").append(prefix +
16122 project->first("TARGET") + "." +
16123 project->first("QMAKE_EXTENSION_PLUGIN"));
16124 if(project->isActiveConfig("lib_version_first"))
16125 project->values("TARGET_x").append(prefix + project->first("TARGET") + "." +
16126 project->first("VER_MAJ") + "." +
16127 project->first("QMAKE_EXTENSION_PLUGIN"));
16129 project->values("TARGET_x").append(prefix + project->first("TARGET") + "." +
16130 project->first("QMAKE_EXTENSION_PLUGIN") +
16131 "." + project->first("VER_MAJ"));
16132 project->values("TARGET") = project->values("TARGET_x.y.z");
16133 } else if (!project->isEmpty("QMAKE_HPUX_SHLIB")) {
16134 project->values("TARGET_").append("lib" + project->first("TARGET") + ".sl");
16135 if(project->isActiveConfig("lib_version_first"))
16136 project->values("TARGET_x").append("lib" + project->first("VER_MAJ") + "." +
16137 project->first("TARGET"));
16139 project->values("TARGET_x").append("lib" + project->first("TARGET") + "." +
16140 project->first("VER_MAJ"));
16141 project->values("TARGET") = project->values("TARGET_x");
16142 } else if (!project->isEmpty("QMAKE_AIX_SHLIB")) {
16143 project->values("TARGET_").append("lib" + project->first("TARGET") + ".a");
16144 if(project->isActiveConfig("lib_version_first")) {
16145 project->values("TARGET_x").append("lib" + project->first("TARGET") + "." +
16146 project->first("VER_MAJ") + "." +
16147 project->first("QMAKE_EXTENSION_SHLIB"));
16148 project->values("TARGET_x.y").append("lib" + project->first("TARGET") + "." +
16149 project->first("VER_MAJ") +
16150 "." + project->first("VER_MIN") + "." +
16151 project->first("QMAKE_EXTENSION_SHLIB"));
16152 project->values("TARGET_x.y.z").append("lib" + project->first("TARGET") + "." +
16153 project->first("VER_MAJ") + "." +
16154 project->first("VER_MIN") + "." +
16155 project->first("VER_PAT") + "." +
16156 project->first("QMAKE_EXTENSION_SHLIB"));
16158 project->values("TARGET_x").append("lib" + project->first("TARGET") + "." +
16159 project->first("QMAKE_EXTENSION_SHLIB") +
16160 "." + project->first("VER_MAJ"));
16161 project->values("TARGET_x.y").append("lib" + project->first("TARGET") + "." +
16162 project->first("QMAKE_EXTENSION_SHLIB") +
16163 "." + project->first("VER_MAJ") +
16164 "." + project->first("VER_MIN"));
16165 project->values("TARGET_x.y.z").append("lib" + project->first("TARGET") + "." +
16166 project->first("QMAKE_EXTENSION_SHLIB") + "." +
16167 project->first("VER_MAJ") + "." +
16168 project->first("VER_MIN") + "." +
16169 project->first("VER_PAT"));
16171 project->values("TARGET") = project->values("TARGET_x.y.z");
16173 project->values("TARGET_").append("lib" + project->first("TARGET") + "." +
16174 project->first("QMAKE_EXTENSION_SHLIB"));
16175 if(project->isActiveConfig("lib_version_first")) {
16176 project->values("TARGET_x").append("lib" + project->first("TARGET") + "." +
16177 project->first("VER_MAJ") + "." +
16178 project->first("QMAKE_EXTENSION_SHLIB"));
16179 project->values("TARGET_x.y").append("lib" + project->first("TARGET") + "." +
16180 project->first("VER_MAJ") +
16181 "." + project->first("VER_MIN") + "." +
16182 project->first("QMAKE_EXTENSION_SHLIB"));
16183 project->values("TARGET_x.y.z").append("lib" + project->first("TARGET") + "." +
16184 project->first("VER_MAJ") + "." +
16185 project->first("VER_MIN") + "." +
16186 project->first("VER_PAT") + "." +
16187 project->values("QMAKE_EXTENSION_SHLIB").first());
16189 project->values("TARGET_x").append("lib" + project->first("TARGET") + "." +
16190 project->first("QMAKE_EXTENSION_SHLIB") +
16191 "." + project->first("VER_MAJ"));
16192 project->values("TARGET_x.y").append("lib" + project->first("TARGET") + "." +
16193 project->first("QMAKE_EXTENSION_SHLIB")
16194 + "." + project->first("VER_MAJ") +
16195 "." + project->first("VER_MIN"));
16196 project->values("TARGET_x.y.z").append("lib" + project->first("TARGET") +
16199 "QMAKE_EXTENSION_SHLIB").first() + "." +
16200 project->first("VER_MAJ") + "." +
16201 project->first("VER_MIN") + "." +
16202 project->first("VER_PAT"));
16204 project->values("TARGET") = project->values("TARGET_x.y.z");
16206 if(project->isEmpty("QMAKE_LN_SHLIB"))
16207 project->values("QMAKE_LN_SHLIB").append("ln -s");
16208 if (!project->values("QMAKE_LFLAGS_SONAME").isEmpty()) {
16210 if(project->isActiveConfig("plugin")) {
16211 if(!project->values("TARGET").isEmpty())
16212 soname += project->first("TARGET");
16213 } else if(!project->isEmpty("QMAKE_BUNDLE")) {
16214 soname += project->first("TARGET_x.y");
16215 } else if(!project->values("TARGET_x").isEmpty()) {
16216 soname += project->first("TARGET_x");
16218 if(!soname.isEmpty()) {
16219 if(project->isActiveConfig("absolute_library_soname") &&
16220 project->values("INSTALLS").indexOf("target") != -1 &&
16221 !project->isEmpty("target.path")) {
16222 QString instpath = Option::fixPathToTargetOS(project->first("target.path"));
16223 if(!instpath.endsWith(Option::dir_sep))
16224 instpath += Option::dir_sep;
16225 soname.prepend(instpath);
16227 project->values("QMAKE_LFLAGS_SONAME").first() += escapeFilePath(soname);
16230 if (project->values("QMAKE_LINK_SHLIB_CMD").isEmpty())
16231 project->values("QMAKE_LINK_SHLIB_CMD").append(
16232 "$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(LIBS) $(OBJCOMP)");
16234 if (!project->values("QMAKE_APP_FLAG").isEmpty()) {
16235 project->values("QMAKE_CFLAGS") += project->values("QMAKE_CFLAGS_APP");
16236 project->values("QMAKE_CXXFLAGS") += project->values("QMAKE_CXXFLAGS_APP");
16237 project->values("QMAKE_LFLAGS") += project->values("QMAKE_LFLAGS_APP");
16238 } else if (project->isActiveConfig("dll")) {
16239 if(!project->isActiveConfig("plugin") || !project->isActiveConfig("plugin_no_share_shlib_cflags")) {
16240 project->values("QMAKE_CFLAGS") += project->values("QMAKE_CFLAGS_SHLIB");
16241 project->values("QMAKE_CXXFLAGS") += project->values("QMAKE_CXXFLAGS_SHLIB");
16243 if (project->isActiveConfig("plugin")) {
16244 project->values("QMAKE_CFLAGS") += project->values("QMAKE_CFLAGS_PLUGIN");
16245 project->values("QMAKE_CXXFLAGS") += project->values("QMAKE_CXXFLAGS_PLUGIN");
16246 project->values("QMAKE_LFLAGS") += project->values("QMAKE_LFLAGS_PLUGIN");
16247 if(project->isActiveConfig("plugin_with_soname") && !project->isActiveConfig("compile_libtool"))
16248 project->values("QMAKE_LFLAGS") += project->values("QMAKE_LFLAGS_SONAME");
16250 project->values("QMAKE_LFLAGS") += project->values("QMAKE_LFLAGS_SHLIB");
16251 if(!project->isEmpty("QMAKE_LFLAGS_COMPAT_VERSION")) {
16252 if(project->isEmpty("COMPAT_VERSION"))
16253 project->values("QMAKE_LFLAGS") += QString(project->first("QMAKE_LFLAGS_COMPAT_VERSION") +
16254 project->first("VER_MAJ") + "." +
16255 project->first("VER_MIN"));
16257 project->values("QMAKE_LFLAGS") += QString(project->first("QMAKE_LFLAGS_COMPAT_VERSION") +
16258 project->first("COMPATIBILITY_VERSION"));
16260 if(!project->isEmpty("QMAKE_LFLAGS_VERSION")) {
16261 project->values("QMAKE_LFLAGS") += QString(project->first("QMAKE_LFLAGS_VERSION") +
16262 project->first("VER_MAJ") + "." +
16263 project->first("VER_MIN") + "." +
16264 project->first("VER_PAT"));
16266 if(!project->isActiveConfig("compile_libtool"))
16267 project->values("QMAKE_LFLAGS") += project->values("QMAKE_LFLAGS_SONAME");
16271 if(!project->isEmpty("QMAKE_BUNDLE")) {
16272 QString plist = fileFixify(project->first("QMAKE_INFO_PLIST"));
16273 if(plist.isEmpty())
16274 plist = specdir() + QDir::separator() + "Info.plist." + project->first("TEMPLATE");
16275 if(exists(Option::fixPathToLocalOS(plist))) {
16276 if(project->isEmpty("QMAKE_INFO_PLIST"))
16277 project->values("QMAKE_INFO_PLIST").append(plist);
16278 project->values("QMAKE_INFO_PLIST_OUT").append(project->first("DESTDIR") +
16279 project->first("QMAKE_BUNDLE") +
16280 "/Contents/Info.plist");
16281 project->values("ALL_DEPS") += project->first("QMAKE_INFO_PLIST_OUT");
16282 if(!project->isEmpty("ICON") && project->first("TEMPLATE") == "app")
16283 project->values("ALL_DEPS") += project->first("DESTDIR") +
16284 project->first("QMAKE_BUNDLE") +
16285 "/Contents/Resources/" + project->first("ICON").section('/', -1);
16286 if(!project->isEmpty("QMAKE_BUNDLE_DATA")) {
16287 QString bundle_dir = project->first("DESTDIR") + project->first("QMAKE_BUNDLE") + "/";
16288 QStringList &alldeps = project->values("ALL_DEPS");
16289 const QStringList &bundle_data = project->values("QMAKE_BUNDLE_DATA");
16290 for(int i = 0; i < bundle_data.count(); i++) {
16291 const QStringList &files = project->values(bundle_data[i] + ".files");
16292 QString path = bundle_dir;
16293 if(!project->isEmpty(bundle_data[i] + ".version")) {
16294 alldeps += Option::fixPathToLocalOS(path + Option::dir_sep +
16295 project->first(bundle_data[i] + ".path"));
16296 path += project->first(bundle_data[i] + ".version") + "/" +
16297 project->first("QMAKE_FRAMEWORK_VERSION") + "/";
16299 path += project->first(bundle_data[i] + ".path");
16300 path = Option::fixPathToLocalOS(path);
16301 for(int file = 0; file < files.count(); file++)
16302 alldeps += path + Option::dir_sep + fileInfo(files[file]).fileName();
16310 UnixMakefileGenerator::libtoolFileName(bool fixify)
16312 QString ret = var("TARGET");
16313 int slsh = ret.lastIndexOf(Option::dir_sep);
16315 ret = ret.right(ret.length() - slsh - 1);
16316 int dot = ret.indexOf('.');
16318 ret = ret.left(dot);
16319 ret += Option::libtool_ext;
16320 if(!project->isEmpty("QMAKE_LIBTOOL_DESTDIR"))
16321 ret.prepend(project->first("QMAKE_LIBTOOL_DESTDIR") + Option::dir_sep);
16323 if(QDir::isRelativePath(ret) && !project->isEmpty("DESTDIR"))
16324 ret.prepend(project->first("DESTDIR"));
16325 ret = Option::fixPathToLocalOS(fileFixify(ret, qmake_getpwd(), Option::output_dir));
16331 UnixMakefileGenerator::writeLibtoolFile()
16333 QString fname = libtoolFileName(), lname = fname;
16334 mkdir(fileInfo(fname).path());
16335 int slsh = lname.lastIndexOf(Option::dir_sep);
16337 lname = lname.right(lname.length() - slsh - 1);
16339 if(!ft.open(QIODevice::WriteOnly))
16341 project->values("ALL_DEPS").append(fileFixify(fname));
16343 QTextStream t(&ft);
16344 t << "# " << lname << " - a libtool library file\n";
16345 t << "# Generated by qmake/libtool (" << qmake_version() << ") (Qt "
16346 << "4.3.2" << ") on: " << QDateTime::currentDateTime().toString();
16349 t << "# The name that we can dlopen(3).\n"
16350 << "dlname='" << var(project->isActiveConfig("plugin") ? "TARGET" : "TARGET_x")
16353 t << "# Names of this library.\n";
16354 t << "library_names='";
16355 if(project->isActiveConfig("plugin")) {
16356 t << var("TARGET");
16358 if (project->isEmpty("QMAKE_HPUX_SHLIB"))
16359 t << var("TARGET_x.y.z") << " ";
16360 t << var("TARGET_x") << " " << var("TARGET_");
16364 t << "# The name of the static archive.\n"
16365 << "old_library='" << lname.left(lname.length()-Option::libtool_ext.length()) << ".a'\n\n";
16367 t << "# Libraries that this one depends upon.\n";
16369 if(!project->isEmpty("QMAKE_INTERNAL_PRL_LIBS"))
16370 libs = project->values("QMAKE_INTERNAL_PRL_LIBS");
16372 libs << "QMAKE_LIBS";
16373 t << "dependency_libs='";
16374 for(QStringList::ConstIterator it = libs.begin(); it != libs.end(); ++it)
16375 t << project->values((*it)).join(" ") << " ";
16378 t << "# Version information for " << lname << "\n";
16379 int maj = project->first("VER_MAJ").toInt();
16380 int min = project->first("VER_MIN").toInt();
16381 int pat = project->first("VER_PAT").toInt();
16382 t << "current=" << (10*maj + min) << "\n"
16384 << "revision=" << pat << "\n\n";
16386 t << "# Is this an already installed library.\n"
16387 "installed=yes\n\n";
16389 t << "# Files to dlopen/dlpreopen.\n"
16391 "dlpreopen=''\n\n";
16393 QString install_dir = project->first("QMAKE_LIBTOOL_LIBDIR");
16394 if(install_dir.isEmpty())
16395 install_dir = project->first("target.path");
16396 if(install_dir.isEmpty())
16397 install_dir = project->first("DESTDIR");
16398 t << "# Directory that this library needs to be installed in:\n"
16399 "libdir='" << Option::fixPathToTargetOS(install_dir, false) << "'\n";
16403 UnixMakefileGenerator::pkgConfigFileName(bool fixify)
16405 QString ret = var("TARGET");
16406 int slsh = ret.lastIndexOf(Option::dir_sep);
16408 ret = ret.right(ret.length() - slsh - 1);
16409 if(ret.startsWith("lib"))
16411 int dot = ret.indexOf('.');
16413 ret = ret.left(dot);
16414 ret += Option::pkgcfg_ext;
16415 if(!project->isEmpty("QMAKE_PKGCONFIG_DESTDIR"))
16416 ret.prepend(project->first("QMAKE_PKGCONFIG_DESTDIR") + Option::dir_sep);
16418 if(QDir::isRelativePath(ret) && !project->isEmpty("DESTDIR"))
16419 ret.prepend(project->first("DESTDIR"));
16420 ret = Option::fixPathToLocalOS(fileFixify(ret, qmake_getpwd(), Option::output_dir));
16426 UnixMakefileGenerator::pkgConfigPrefix() const
16428 if(!project->isEmpty("QMAKE_PKGCONFIG_PREFIX"))
16429 return project->first("QMAKE_PKGCONFIG_PREFIX");
16430 return QLibraryInfo::location(QLibraryInfo::PrefixPath);
16434 UnixMakefileGenerator::pkgConfigFixPath(QString path) const
16436 QString prefix = pkgConfigPrefix();
16437 if(path.startsWith(prefix))
16438 path = path.replace(prefix, "${prefix}");
16443 UnixMakefileGenerator::writePkgConfigFile()
16445 QString fname = pkgConfigFileName(), lname = fname;
16446 mkdir(fileInfo(fname).path());
16447 int slsh = lname.lastIndexOf(Option::dir_sep);
16449 lname = lname.right(lname.length() - slsh - 1);
16451 if(!ft.open(QIODevice::WriteOnly))
16453 project->values("ALL_DEPS").append(fileFixify(fname));
16454 QTextStream t(&ft);
16456 QString prefix = pkgConfigPrefix();
16457 QString libDir = project->first("QMAKE_PKGCONFIG_LIBDIR");
16458 if(libDir.isEmpty())
16459 libDir = prefix + Option::dir_sep + "lib" + Option::dir_sep;
16460 QString includeDir = project->first("QMAKE_PKGCONFIG_INCDIR");
16461 if(includeDir.isEmpty())
16462 includeDir = prefix + "/include";
16464 t << "prefix=" << prefix << endl;
16465 t << "exec_prefix=${prefix}\n"
16466 << "libdir=" << pkgConfigFixPath(libDir) << "\n"
16467 << "includedir=" << pkgConfigFixPath(includeDir) << endl;
16470 t << varGlue("CONFIG", "qt_config=", " ", "") << endl;
16473 const QStringList &pkgconfig_vars = project->values("QMAKE_PKGCONFIG_VARIABLES");
16474 for(int i = 0; i < pkgconfig_vars.size(); ++i) {
16475 QString var = project->first(pkgconfig_vars.at(i) + ".name"),
16476 val = project->values(pkgconfig_vars.at(i) + ".value").join(" ");
16479 if(val.isEmpty()) {
16480 const QStringList &var_vars = project->values(pkgconfig_vars.at(i) + ".variable");
16481 for(int v = 0; v < var_vars.size(); ++v) {
16482 const QStringList &vars = project->values(var_vars.at(v));
16483 for(int var = 0; var < vars.size(); ++var) {
16486 val += pkgConfigFixPath(vars.at(var));
16490 t << var << "=" << val << endl;
16495 QString name = project->first("QMAKE_PKGCONFIG_NAME");
16496 if(name.isEmpty()) {
16497 name = project->first("QMAKE_ORIG_TARGET").toLower();
16498 name.replace(0, 1, name[0].toUpper());
16500 t << "Name: " << name << endl;
16501 QString desc = project->values("QMAKE_PKGCONFIG_DESCRIPTION").join(" ");
16502 if(desc.isEmpty()) {
16503 if(name.isEmpty()) {
16504 desc = project->first("QMAKE_ORIG_TARGET").toLower();
16505 desc.replace(0, 1, desc[0].toUpper());
16509 if(project->first("TEMPLATE") == "lib") {
16510 if(project->isActiveConfig("plugin"))
16513 desc += " Library";
16514 } else if(project->first("TEMPLATE") == "app") {
16515 desc += " Application";
16518 t << "Description: " << desc << endl;
16519 t << "Version: " << project->first("VERSION") << endl;
16523 if(!project->isEmpty("QMAKE_INTERNAL_PRL_LIBS"))
16524 libs = project->values("QMAKE_INTERNAL_PRL_LIBS");
16526 libs << "QMAKE_LIBS";
16527 libs << "QMAKE_LFLAGS_THREAD";
16528 t << "Libs: -L${libdir} -l" << lname.left(lname.length()-Option::libtool_ext.length()) << " ";
16529 for(QStringList::ConstIterator it = libs.begin(); it != libs.end(); ++it)
16530 t << project->values((*it)).join(" ") << " ";
16537 << varGlue("PRL_EXPORT_DEFINES","-D"," -D"," ")
16538 << project->values("PRL_EXPORT_CXXFLAGS").join(" ")
16539 << project->values("QMAKE_PKGCONFIG_CFLAGS").join(" ")
16541 << " -I${includedir}" << endl;