diff options
author | Christian Kamm <christian.d.kamm@nokia.com> | 2011-10-07 14:04:06 +0200 |
---|---|---|
committer | Christian Kamm <christian.d.kamm@nokia.com> | 2011-10-10 09:36:12 +0200 |
commit | a7f78991c9317471ddc85f6556be971d019f3f59 (patch) | |
tree | 51e53891d62970c14efc59e986a2459cad6267ed /src/plugins/qmljstools/qmljslocatordata.cpp | |
parent | 737aaf02b4d221d8088513fef810e0f453a737be (diff) |
QmlJS: Move commonly used functions to qmlutils.h.
Change-Id: I22376d96fe575bc00a55094c06af80e32a5587e6
Reviewed-on: http://codereview.qt-project.org/6238
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
Diffstat (limited to 'src/plugins/qmljstools/qmljslocatordata.cpp')
-rw-r--r-- | src/plugins/qmljstools/qmljslocatordata.cpp | 36 |
1 files changed, 9 insertions, 27 deletions
diff --git a/src/plugins/qmljstools/qmljslocatordata.cpp b/src/plugins/qmljstools/qmljslocatordata.cpp index 1c741b59a28..672a3e360c1 100644 --- a/src/plugins/qmljstools/qmljslocatordata.cpp +++ b/src/plugins/qmljstools/qmljslocatordata.cpp @@ -33,10 +33,12 @@ #include "qmljslocatordata.h" #include <qmljs/qmljsmodelmanagerinterface.h> -#include <qmljs/qmljsbind.h> +#include <qmljs/qmljsutils.h> //#include <qmljs/qmljsinterpreter.h> #include <qmljs/parser/qmljsast_p.h> +#include <QtCore/QFileInfo> + using namespace QmlJSTools::Internal; using namespace QmlJS; using namespace QmlJS::AST; @@ -56,26 +58,6 @@ LocatorData::~LocatorData() {} namespace { -static QString findId(UiObjectInitializer *initializer) -{ - if (!initializer) - return QString(); - for (UiObjectMemberList *member = initializer->members; member; member = member->next) { - if (UiScriptBinding *script = cast<UiScriptBinding *>(member->member)) { - if (!script->qualifiedId || script->qualifiedId->name.isEmpty() || script->qualifiedId->next) - continue; - if (script->qualifiedId->name != QLatin1String("id")) - continue; - if (ExpressionStatement *expStmt = cast<ExpressionStatement *>(script->statement)) { - if (IdentifierExpression *identExp = cast<IdentifierExpression *>(expStmt->expression)) { - if (!identExp->name.isEmpty()) - return identExp->name.toString(); - } - } - } - } - return QString(); -} class FunctionFinder : protected AST::Visitor { @@ -159,7 +141,7 @@ protected: { if (!ast->qualifiedId) return true; - const QString qualifiedIdString = Bind::toString(ast->qualifiedId); + const QString qualifiedIdString = toString(ast->qualifiedId); if (cast<Block *>(ast->statement)) { LocatorData::Entry entry = basicEntry(ast->qualifiedId->identifierToken); @@ -168,7 +150,7 @@ protected: m_entries += entry; } - accept(ast->statement, contextString(Bind::toString(ast->qualifiedId))); + accept(ast->statement, contextString(toString(ast->qualifiedId))); return false; } @@ -177,8 +159,8 @@ protected: if (!ast->qualifiedTypeNameId) return true; - QString context = Bind::toString(ast->qualifiedTypeNameId); - const QString id = findId(ast->initializer); + QString context = toString(ast->qualifiedTypeNameId); + const QString id = idOfObject(ast->initializer); if (!id.isEmpty()) context = QString("%1 (%2)").arg(id, context); accept(ast->initializer, contextString(context)); @@ -190,8 +172,8 @@ protected: if (!ast->qualifiedTypeNameId) return true; - QString context = Bind::toString(ast->qualifiedTypeNameId); - const QString id = findId(ast->initializer); + QString context = toString(ast->qualifiedTypeNameId); + const QString id = idOfObject(ast->initializer); if (!id.isEmpty()) context = QString("%1 (%2)").arg(id, context); accept(ast->initializer, contextString(context)); |