comparison generator/abstractmetabuilder.cpp @ 259:515d6e1c7b10 lifetime

another iteration
author maxter
date Thu, 17 Sep 2009 16:28:41 +0000
parents 17b5e13364b7
children b5773ccab07d
comparison
equal deleted inserted replaced
258:1da8870e9a62 259:515d6e1c7b10
56 #include <QtCore/QFileInfo> 56 #include <QtCore/QFileInfo>
57 #include <QtCore/QTextCodec> 57 #include <QtCore/QTextCodec>
58 #include <QtCore/QTextStream> 58 #include <QtCore/QTextStream>
59 #include <QtCore/QVariant> 59 #include <QtCore/QVariant>
60 60
61 #include <iostream>
62
61 static QString strip_template_args(const QString &name) 63 static QString strip_template_args(const QString &name)
62 { 64 {
63 int pos = name.indexOf('<'); 65 int pos = name.indexOf('<');
64 return pos < 0 ? name : name.left(pos); 66 return pos < 0 ? name : name.left(pos);
65 } 67 }
1308 } else if (meta_function->isConstructor() && !meta_function->isPrivate()) { 1310 } else if (meta_function->isConstructor() && !meta_function->isPrivate()) {
1309 *meta_class -= AbstractMetaAttributes::Final; 1311 *meta_class -= AbstractMetaAttributes::Final;
1310 meta_class->setHasNonPrivateConstructor(true); 1312 meta_class->setHasNonPrivateConstructor(true);
1311 } 1313 }
1312 1314
1313 if (meta_function->isDestructor() && !meta_function->isFinal()) 1315 if (meta_function->isDestructor())
1314 meta_class->setHasVirtualDestructor(true); 1316 {
1317 if (meta_class->name() == "QFSFileEngine")
1318 {
1319 std::cout << meta_function->isFinal() << std::endl;
1320 std::cout << qPrintable(meta_function->name()) << std::endl;
1321 qFatal("Gop");
1322 }
1323
1324 if (!meta_function->isFinal())
1325 meta_class->setHasVirtualDestructor(true);
1326 }
1315 1327
1316 if (!meta_function->isDestructor() 1328 if (!meta_function->isDestructor()
1317 && !meta_function->isInvalid() 1329 && !meta_function->isInvalid()
1318 && (!meta_function->isConstructor() || !meta_function->isPrivate())) { 1330 && (!meta_function->isConstructor() || !meta_function->isPrivate())) {
1319 1331