Remove "icheck build" test.

Does not build, is not being maintained, purpose is unclear.

Change-Id: I00f3bbc9580b57e3945882a411af502a78f4864f
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
This commit is contained in:
Christian Kandeler
2012-09-07 10:51:50 +02:00
committed by Eike Ziller
parent 6e09fa8c70
commit 0d2b1aedeb
12 changed files with 25 additions and 2228 deletions
-37
View File
@@ -231,12 +231,6 @@ bool Function::isEqualTo(const Type *other) const
return false;
else if (isVolatile() != o->isVolatile())
return false;
#ifdef ICHECK_BUILD
else if (isInvokable() != o->isInvokable())
return false;
else if (isSignal() != o->isSignal())
return false;
#endif
const Name *l = unqualifiedName();
const Name *r = o->unqualifiedName();
@@ -256,37 +250,6 @@ bool Function::isEqualTo(const Type *other) const
return false;
}
#ifdef ICHECK_BUILD
bool Function::isEqualTo(const Function* fct, bool ignoreName/* = false*/) const
{
if (!ignoreName)
return isEqualTo((Type*)fct);
if (! fct)
return false;
else if (isConst() != fct->isConst())
return false;
else if (isVolatile() != fct->isVolatile())
return false;
else if (isInvokable() != fct->isInvokable())
return false;
else if (isSignal() != fct->isSignal())
return false;
if (_arguments->symbolCount() != fct->_arguments->symbolCount())
return false;
else if (! _returnType.isEqualTo(fct->_returnType))
return false;
for (unsigned i = 0; i < _arguments->symbolCount(); ++i) {
Symbol *l = _arguments->symbolAt(i);
Symbol *r = fct->_arguments->symbolAt(i);
if (! l->type().isEqualTo(r->type()))
return false;
}
return true;
}
#endif
void Function::accept0(TypeVisitor *visitor)
{ visitor->visit(this); }
-4
View File
@@ -341,10 +341,6 @@ public:
bool isPureVirtual() const;
void setPureVirtual(bool isPureVirtual);
#ifdef ICHECK_BUILD
bool isEqualTo(const Function* fct, bool ignoreName = false) const;
#endif
// Symbol's interface
virtual FullySpecifiedType type() const;
+16 -49
View File
@@ -36,31 +36,25 @@
#include "cpphighlightingsupport.h"
#include "cpphighlightingsupportinternal.h"
#include "abstracteditorsupport.h"
#ifndef ICHECK_BUILD
# include "cpptoolsconstants.h"
# include "cpptoolseditorsupport.h"
# include "cppfindreferences.h"
#endif
#include "cpptoolsconstants.h"
#include "cpptoolseditorsupport.h"
#include "cppfindreferences.h"
#include <functional>
#include <QtConcurrentRun>
#ifndef ICHECK_BUILD
# include <QFutureSynchronizer>
# include <utils/runextensions.h>
# include <texteditor/itexteditor.h>
# include <texteditor/basetexteditor.h>
# include <projectexplorer/project.h>
# include <projectexplorer/projectexplorer.h>
# include <projectexplorer/projectexplorerconstants.h>
# include <projectexplorer/session.h>
# include <coreplugin/icore.h>
# include <coreplugin/mimedatabase.h>
# include <coreplugin/editormanager/editormanager.h>
# include <coreplugin/progressmanager/progressmanager.h>
# include <extensionsystem/pluginmanager.h>
#else
# include <QDir>
#endif
#include <QFutureSynchronizer>
#include <utils/runextensions.h>
#include <texteditor/itexteditor.h>
#include <texteditor/basetexteditor.h>
#include <projectexplorer/project.h>
#include <projectexplorer/projectexplorer.h>
#include <projectexplorer/projectexplorerconstants.h>
#include <projectexplorer/session.h>
#include <coreplugin/icore.h>
#include <coreplugin/mimedatabase.h>
#include <coreplugin/editormanager/editormanager.h>
#include <coreplugin/progressmanager/progressmanager.h>
#include <extensionsystem/pluginmanager.h>
#include <utils/hostosinfo.h>
#include <utils/qtcassert.h>
@@ -199,7 +193,6 @@ static const char pp_configuration[] =
"#define __inline inline\n"
"#define __forceinline inline\n";
#ifndef ICHECK_BUILD
CppPreprocessor::CppPreprocessor(QPointer<CppModelManager> modelManager, bool dumpFileNameWhileParsing)
: snapshot(modelManager->snapshot()),
m_modelManager(modelManager),
@@ -210,16 +203,6 @@ CppPreprocessor::CppPreprocessor(QPointer<CppModelManager> modelManager, bool du
preprocess.setKeepComments(true);
}
#else
CppPreprocessor::CppPreprocessor(QPointer<CPlusPlus::ParseManager> modelManager)
: preprocess(this, &env),
m_dumpFileNameWhileParsing(false),
m_revision(0)
{
}
#endif
CppPreprocessor::~CppPreprocessor()
{ }
@@ -299,7 +282,6 @@ void CppPreprocessor::setProjectFiles(const QStringList &files)
void CppPreprocessor::setTodo(const QStringList &files)
{ m_todo = QSet<QString>::fromList(files); }
#ifndef ICHECK_BUILD
namespace {
class Process: public std::unary_function<Document::Ptr, void>
{
@@ -334,7 +316,6 @@ public:
}
};
} // end of anonymous namespace
#endif
void CppPreprocessor::run(const QString &fileName)
{
@@ -639,21 +620,11 @@ void CppPreprocessor::sourceNeeded(unsigned line, QString &fileName, IncludeType
snapshot.insert(doc);
m_todo.remove(fileName);
#ifndef ICHECK_BUILD
Process process(m_modelManager, doc, snapshot, m_workingCopy);
process();
(void) switchDocument(previousDoc);
#else
doc->releaseSource();
Document::CheckMode mode = Document::FastCheck;
mode = Document::FullCheck;
doc->parse();
doc->check(mode);
(void) switchDocument(previousDoc);
#endif
}
Document::Ptr CppPreprocessor::switchDocument(Document::Ptr doc)
@@ -663,7 +634,6 @@ Document::Ptr CppPreprocessor::switchDocument(Document::Ptr doc)
return previousDoc;
}
#ifndef ICHECK_BUILD
void CppModelManager::updateModifiedSourceFiles()
{
const Snapshot snapshot = this->snapshot();
@@ -1437,6 +1407,3 @@ QList<Document::DiagnosticMessage> CppModelManager::extraDiagnostics(const QStri
}
return m_extraDiagnostics.value(fileName).value(kind);
}
#endif
+9 -24
View File
@@ -34,26 +34,19 @@
#include "cpptools_global.h"
#include "cpptoolsconstants.h"
#include "ModelManagerInterface.h"
#ifndef ICHECK_BUILD
# include <projectexplorer/project.h>
#endif
#include <projectexplorer/project.h>
#include <cplusplus/CppDocument.h>
#include <cplusplus/PreprocessorClient.h>
#ifndef ICHECK_BUILD
# include <texteditor/basetexteditor.h>
#endif
#include <texteditor/basetexteditor.h>
#include <cplusplus/PreprocessorEnvironment.h>
#include <cplusplus/pp-engine.h>
#ifdef ICHECK_BUILD
# include "parsemanager.h"
#else
# include <QHash>
# include <QFutureInterface>
# include <QFutureSynchronizer>
# include <QMutex>
# include <QTimer>
# include <QTextEdit> // for QTextEdit::ExtraSelection
#endif
#include <QHash>
#include <QFutureInterface>
#include <QFutureSynchronizer>
#include <QMutex>
#include <QTimer>
#include <QTextEdit> // for QTextEdit::ExtraSelection
namespace Core {
class IEditor;
@@ -83,7 +76,6 @@ class CppEditorSupport;
class CppPreprocessor;
class CppFindReferences;
#ifndef ICHECK_BUILD
class CPPTOOLS_EXPORT CppModelManager : public CPlusPlus::CppModelManagerInterface
{
Q_OBJECT
@@ -255,16 +247,11 @@ private:
CppHighlightingSupportFactory *m_highlightingFactory;
CppHighlightingSupportFactory *m_highlightingFallback;
};
#endif
class CPPTOOLS_EXPORT CppPreprocessor: public CPlusPlus::Client
{
public:
#ifndef ICHECK_BUILD
CppPreprocessor(QPointer<CppModelManager> modelManager, bool dumpFileNameWhileParsing = false);
#else
CppPreprocessor(QPointer<CPlusPlus::ParseManager> modelManager);
#endif
virtual ~CppPreprocessor();
void setRevision(unsigned revision);
@@ -313,9 +300,7 @@ protected:
virtual void sourceNeeded(unsigned line, QString &fileName, IncludeType type);
private:
#ifndef ICHECK_BUILD
QPointer<CppModelManager> m_modelManager;
#endif
bool m_dumpFileNameWhileParsing;
CPlusPlus::Environment env;
CPlusPlus::Preprocessor preprocess;
-1
View File
@@ -9,7 +9,6 @@ SUBDIRS += \
environment \
fakevim \
generichighlighter \
# icheckbuild \
profilewriter \
ioutils \
qtcprocess \
-20
View File
@@ -1,20 +0,0 @@
CONFIG += qtestlib testcase
include(../../../qtcreator.pri)
include($$IDE_SOURCE_TREE/src/libs/cplusplus/cplusplus.pri)
include($$IDE_SOURCE_TREE/src/plugins/cpptools/cpptools.pri)
QT += testlib
DEFINES += ICHECK_BUILD ICHECK_APP_BUILD
INCLUDEPATH += $$IDE_SOURCE_TREE/src/libs/cplusplus
INCLUDEPATH += $$IDE_SOURCE_TREE/src/plugins
LIBS += $$IDE_SOURCE_TREE/lib/qtcreator/plugins
HEADERS += ichecklib.h \
ichecklib_global.h \
parsemanager.h
SOURCES += ichecklib.cpp \
parsemanager.cpp \
tst_icheckbuild.cpp
-114
View File
@@ -1,114 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2012 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: http://www.qt-project.org/
**
** GNU Lesser General Public License Usage
**
** This file may be used under the terms of the GNU Lesser General Public
** License version 2.1 as published by the Free Software Foundation and
** appearing in the file LICENSE.LGPL included in the packaging of this file.
** Please review the following information to ensure the GNU Lesser General
** Public License version 2.1 requirements will be met:
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** Other Usage
**
** Alternatively, this file may be used in accordance with the terms and
** conditions contained in a signed written agreement between you and Nokia.
**
**
**************************************************************************/
#include "ichecklib.h"
#include "parsemanager.h"
#include <QCoreApplication>
#include <QString>
#include <QStringList>
#include <iostream>
#include <QDebug>
#include <QDir>
#include <QFile>
#include <QFileInfo>
#include <QProcess>
QStringList getQTIncludePath()
{
QStringList ret;
QStringList processevironment = QProcess::systemEnvironment();
foreach(QString item, processevironment){
if(item.indexOf("QTDIR=") == 0){
QString qtpath = item.remove("QTDIR=");
ret << qtpath + "/include";
ret << qtpath + "/include/ActiveQt";
ret << qtpath + "/include/phonon";
ret << qtpath + "/include/phonon_compat";
ret << qtpath + "/include/Qt";
ret << qtpath + "/include/Qt3Support";
ret << qtpath + "/include/QtAssistant";
ret << qtpath + "/include/QtCore";
ret << qtpath + "/include/QtDBus";
ret << qtpath + "/include/QtDeclarative";
ret << qtpath + "/include/QtDesigner";
ret << qtpath + "/include/QtGui";
ret << qtpath + "/include/QtHelp";
ret << qtpath + "/include/QtMultimedia";
ret << qtpath + "/include/QtNetwork";
ret << qtpath + "/include/QtOpenGL";
ret << qtpath + "/include/QtOpenVG";
ret << qtpath + "/include/QtScript";
ret << qtpath + "/include/QtScriptTools";
ret << qtpath + "/include/QtSql";
ret << qtpath + "/include/QtSvg";
ret << qtpath + "/include/QtTest";
ret << qtpath + "/include/QtUiTools";
ret << qtpath + "/include/QtWebKit";
ret << qtpath + "/include/QtXml";
ret << qtpath + "/include/QtXmlPatterns";
break;
}
}
return ret;
}
ICheckLib::ICheckLib()
: pParseManager(0)
{
}
void ICheckLib::ParseHeader(const QStringList& includePath, const QStringList& filelist)
{
if(pParseManager)
delete pParseManager;
pParseManager = 0;
pParseManager = new CPlusPlus::ParseManager();
pParseManager->setIncludePath(includePath);
pParseManager->parse(filelist);
}
bool ICheckLib::check(const ICheckLib& ichecklib /*ICheckLib from interface header*/, QString outputfile)
{
if(pParseManager){
CPlusPlus::ParseManager* cpparsemanager = ichecklib.pParseManager;
return pParseManager->checkAllMetadatas(cpparsemanager, outputfile);
}
return false;
}
QStringList ICheckLib::getErrorMsg()
{
QStringList ret;
if(pParseManager){
ret.append(pParseManager->getErrorMsg());
}
else
ret << "no file was parsed.";
return ret;
}
-49
View File
@@ -1,49 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2012 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: http://www.qt-project.org/
**
** GNU Lesser General Public License Usage
**
** This file may be used under the terms of the GNU Lesser General Public
** License version 2.1 as published by the Free Software Foundation and
** appearing in the file LICENSE.LGPL included in the packaging of this file.
** Please review the following information to ensure the GNU Lesser General
** Public License version 2.1 requirements will be met:
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** Other Usage
**
** Alternatively, this file may be used in accordance with the terms and
** conditions contained in a signed written agreement between you and Nokia.
**
**
**************************************************************************/
#ifndef ICHECKLIB_H
#define ICHECKLIB_H
#include <QStringList>
#include "ichecklib_global.h"
namespace CPlusPlus{
class ParseManager;
}
class ICHECKLIBSHARED_EXPORT ICheckLib {
public:
ICheckLib();
void ParseHeader(const QStringList& includePath, const QStringList& filelist);
bool check(const ICheckLib& ichecklib /*ICheckLib from interface header*/, QString outputfile);
QStringList getErrorMsg();
private:
CPlusPlus::ParseManager* pParseManager;
};
#endif // ICHECKLIB_H
-46
View File
@@ -1,46 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2012 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: http://www.qt-project.org/
**
** GNU Lesser General Public License Usage
**
** This file may be used under the terms of the GNU Lesser General Public
** License version 2.1 as published by the Free Software Foundation and
** appearing in the file LICENSE.LGPL included in the packaging of this file.
** Please review the following information to ensure the GNU Lesser General
** Public License version 2.1 requirements will be met:
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** Other Usage
**
** Alternatively, this file may be used in accordance with the terms and
** conditions contained in a signed written agreement between you and Nokia.
**
**
**************************************************************************/
#ifndef ICHECKLIB_GLOBAL_H
#define ICHECKLIB_GLOBAL_H
#include <qglobal.h>
#ifdef ICHECK_APP_BUILD
# define ICHECKLIBSHARED_EXPORT
#else
# if defined(ICHECKLIB_LIBRARY)
# define ICHECKLIBSHARED_EXPORT Q_DECL_EXPORT
# else
# define ICHECKLIBSHARED_EXPORT Q_DECL_IMPORT
# endif
#endif
#endif // ICHECKLIB_GLOBAL_H
File diff suppressed because it is too large Load Diff
-305
View File
@@ -1,305 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2012 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: http://www.qt-project.org/
**
**
** GNU Lesser General Public License Usage
**
** This file may be used under the terms of the GNU Lesser General Public
** License version 2.1 as published by the Free Software Foundation and
** appearing in the file LICENSE.LGPL included in the packaging of this file.
** Please review the following information to ensure the GNU Lesser General
** Public License version 2.1 requirements will be met:
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** Other Usage
**
** Alternatively, this file may be used in accordance with the terms and
** conditions contained in a signed written agreement between you and Nokia.
**
**
**************************************************************************/
/*
** Description:
**
** The ParseManager parses and compares to different header files
** of its metadata. This can be used for checking if an Interface
** is implemented complete.
**
** How to use it:
**
** //Parse the interface header
** ParseManager* iParseManager = new ParseManager();
** iParseManager->setIncludePath(iIncludepathlist);
** iParseManager->parse(iFilelist);
**
** //Parse the header that needs to be compared against the interface header
** ParseManager* chParseManager = new ParseManager();
** chIncludepathlist << getQTIncludePath();
* chParseManager->setIncludePath(chIncludepathlist);
** chParseManager->parse(chFilelist);
**
** if(!chParseManager->checkAllMetadatas(iParseManager)){
** cout << "Following interface items are missing:" << endl;
** QStringList errorlist = chParseManager->getErrorMsg();
** foreach(QString msg, errorlist){
** cout << (const char *)msg.toLatin1() << endl;
** }
** return -1;
** }
** else
** cout << "Interface is full defined.";
*/
#ifndef PARSEMANAGER_H
#define PARSEMANAGER_H
#include "cplusplus/CppDocument.h"
#include "ASTfwd.h"
#include "FullySpecifiedType.h"
#include <QObject>
#include <QList>
#include <QFuture>
#include <QStringList>
#include <QFile>
namespace CppTools{
namespace Internal{
class CppPreprocessor;
}
}
namespace CPlusPlus {
class CLASSLISTITEM
{
public:
CPlusPlus::TranslationUnit* trlUnit;
ClassSpecifierAST* classspec;
};
class CLASSTREE
{
public:
CLASSLISTITEM* highestlevelclass;
QList<CLASSLISTITEM*> classlist;
};
class FUNCTIONITEM
{
public:
const CLASSLISTITEM* highestlevelclass;
CPlusPlus::TranslationUnit* trlUnit;
ClassSpecifierAST* classAst;
QStringList classWichIsNotFound;
CPlusPlus::Function* function;
bool isEqualTo(FUNCTIONITEM* cpfct, bool ignoreName = true);
FUNCTIONITEM()
{
highestlevelclass = 0;
trlUnit = 0;
classAst = 0;
function = 0;
}
};
class PROPERTYITEM
{
public:
const CLASSLISTITEM* highestlevelclass;
QStringList classWichIsNotFound;
QtPropertyDeclarationAST *ast;
CPlusPlus::TranslationUnit* trlUnit;
FullySpecifiedType type;
ExpressionAST *readAst;
FUNCTIONITEM *readFct;
ExpressionAST *writeAst;
FUNCTIONITEM *writeFct;
ExpressionAST *resetAst;
FUNCTIONITEM *resetFct;
ExpressionAST *notifyAst;
FUNCTIONITEM *notifyFct;
bool foundalldefinedfct;
bool isEqualTo(PROPERTYITEM* cpppt);
PROPERTYITEM()
{
highestlevelclass = 0;
ast = 0;
trlUnit = 0;
readAst = 0;
readFct = 0;
writeAst = 0;
writeFct = 0;
resetAst = 0;
resetFct = 0;
notifyAst = 0;
notifyFct = 0;
foundalldefinedfct = false;
}
static PROPERTYITEM *create(QtPropertyDeclarationAST *ast, const CLASSLISTITEM *clazz);
};
class QENUMITEM
{
public:
const CLASSLISTITEM* highestlevelclass;
QStringList classWichIsNotFound;
QString name;
//an item in this list will be shown like:
//EnumName.EnumItemName.Value
//ConnectionState.disconnected.0
QStringList values;
bool foundallenums;
bool isEqualTo(QENUMITEM *cpenum);
QENUMITEM()
{
highestlevelclass = 0;
values.clear();
foundallenums = true;
}
};
class ENUMITEM
{
public:
const CLASSLISTITEM* highestlevelclass;
CPlusPlus::TranslationUnit* trlUnit;
QStringList classWichIsNotFound;
EnumSpecifierAST* ast;
ENUMITEM()
{
highestlevelclass = 0;
trlUnit = 0;
ast = 0;
}
};
class QFLAGITEM
{
public:
const CLASSLISTITEM* highestlevelclass;
const Name *name;
QStringList classWichIsNotFound;
QStringList enumvalues;
bool foundallenums;
bool isEqualTo(QFLAGITEM *cpflag);
QFLAGITEM()
{
highestlevelclass = 0;
enumvalues.clear();
foundallenums = true;
}
};
class QDECLAREFLAGSITEM
{
public:
const CLASSLISTITEM* highestlevelclass;
CPlusPlus::TranslationUnit* trlUnit;
QStringList classWichIsNotFound;
QtFlagsDeclarationAST* ast;
QDECLAREFLAGSITEM()
{
highestlevelclass = 0;
trlUnit = 0;
ast = 0;
}
};
static QFile* m_resultFile = 0;
class ParseManager : public QObject
{
Q_OBJECT
public:
ParseManager();
virtual ~ParseManager();
void setIncludePath(const QStringList &includePath);
void parse(const QStringList &sourceFiles);
bool checkAllMetadatas(ParseManager* pInterfaceParserManager, QString resultfile);
CppTools::Internal::CppPreprocessor *getPreProcessor() { return pCppPreprocessor; }
QList<CLASSTREE*> CreateClassLists(bool isInterfaceHeader);
QStringList getErrorMsg() { return m_errormsgs; }
private:
void parse(CppTools::Internal::CppPreprocessor *preproc, const QStringList &files);
void Trace(QString value);
inline QString getTraceFuntionString(const FUNCTIONITEM* fctitem, const QString& classname);
void getBaseClasses(const CLASSLISTITEM* pclass
, QList<CLASSLISTITEM*> &baseclasslist
, const QList<CLASSLISTITEM*> &allclasslist
, int level
, bool isInterfaceHeader);
void getElements(QList<FUNCTIONITEM*> &functionlist
, QList<PROPERTYITEM*> &propertylist
, QList<QENUMITEM*> &qenumlist
, QList<ENUMITEM*> &enumlist
, QList<QFLAGITEM*> &qflaglist
, QList<QDECLAREFLAGSITEM*> &qdeclareflaglist
, const QList<CLASSLISTITEM*> classitems
, const CLASSLISTITEM* highestlevelclass);
//<--- for Metadata functions checks
QList<FUNCTIONITEM*> checkMetadataFunctions(const QList<QList<FUNCTIONITEM*> > &classfctlist, const QList<QList<FUNCTIONITEM*> > &iclassfctlist);
bool isMetaObjFunction(FUNCTIONITEM* fct);
QList<FUNCTIONITEM*> containsAllMetadataFunction(const QList<FUNCTIONITEM*> &classfctlist, const QList<FUNCTIONITEM*> &iclassfctlist);
QStringList getErrorMessage(FUNCTIONITEM* fct);
//--->
//<--- for Q_PROPERTY functions checks
QList<PROPERTYITEM*> checkMetadataProperties(const QList<QList<PROPERTYITEM*> > &classproplist
, const QList<QList<FUNCTIONITEM*> > &classfctlist
, const QList<QList<PROPERTYITEM*> > &iclassproplist
, const QList<QList<FUNCTIONITEM*> > &iclassfctlist);
void assignPropertyFunctions(PROPERTYITEM* prop, const QList<QList<FUNCTIONITEM*> > &fctlookuplist);
QList<PROPERTYITEM*> containsAllPropertyFunction(const QList<PROPERTYITEM*> &classproplist, const QList<PROPERTYITEM*> &iclassproplist);
QStringList getErrorMessage(PROPERTYITEM* ppt);
//--->
//<--- for Q_ENUMS checks
QList<QENUMITEM*> checkMetadataEnums(const QList<QList<QENUMITEM*> > &classqenumlist
, const QList<QList<ENUMITEM*> > &classenumlist
, const QList<QList<QENUMITEM*> > &iclassqenumlist
, const QList<QList<ENUMITEM*> > &iclassenumlist);
QStringList getEnumValueStringList(ENUMITEM *penum, QString mappedenumname = "");
void assignEnumValues(QENUMITEM* qenum, const QList<QList<ENUMITEM*> > &enumlookuplist);
QList<QENUMITEM*> containsAllEnums(const QList<QENUMITEM*> &classqenumlist, const QList<QENUMITEM*> &iclassqenumlist);
QStringList getErrorMessage(QENUMITEM* qenum);
//--->
//<--- for QFlags checks --->
QList<QFLAGITEM*> checkMetadataFlags(const QList<QList<QFLAGITEM*> > &classqflaglist
, const QList<QList<QDECLAREFLAGSITEM*> > &classqdeclareflaglist
, const QList<QList<ENUMITEM*> > &classenumlist
, const QList<QList<QFLAGITEM*> > &iclassqflaglist
, const QList<QList<QDECLAREFLAGSITEM*> > &iclassqdeclareflaglist
, const QList<QList<ENUMITEM*> > &iclassenumlist);
void assignFlagValues(QFLAGITEM* qflags, const QList<QList<QDECLAREFLAGSITEM*> > &qdeclareflagslookuplist, const QList<QList<ENUMITEM*> > &enumlookuplist);
QList<QFLAGITEM*> containsAllFlags(const QList<QFLAGITEM*> &classqflaglist, const QList<QFLAGITEM*> &iclassqflaglist);
QStringList getErrorMessage(QFLAGITEM* pfg);
//--->
private:
// cache
QStringList m_includePaths;
QStringList m_frameworkPaths;
QByteArray m_definedMacros;
CppTools::Internal::CppPreprocessor* pCppPreprocessor;
QString m_strHeaderFile;
QStringList m_errormsgs;
};
}
#endif // PARSEMANAGER_H
@@ -1,50 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2012 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: http://www.qt-project.org/
**
**
** GNU Lesser General Public License Usage
**
** This file may be used under the terms of the GNU Lesser General Public
** License version 2.1 as published by the Free Software Foundation and
** appearing in the file LICENSE.LGPL included in the packaging of this file.
** Please review the following information to ensure the GNU Lesser General
** Public License version 2.1 requirements will be met:
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** Other Usage
**
** Alternatively, this file may be used in accordance with the terms and
** conditions contained in a signed written agreement between you and Nokia.
**
**
**************************************************************************/
#include <QtTest>
#include "ichecklib.h"
#include <QDebug>
class tst_icheckbuild : public QObject
{
Q_OBJECT
private slots:
void doTests();
};
void tst_icheckbuild::doTests()
{
qDebug() << "icheck build was successful";
}
QTEST_MAIN(tst_icheckbuild)
#include "tst_icheckbuild.moc"