Update qmljs parser to Qt 5.15 parser

* parser side support for annotations, inline components, new UiVersion
  and all the things included in QT 5.15 parser
* SourceLocation moved from QmlJS:AST to QmlJS
* Visitors now need to handle throwRecursionDepthError
* BaseVisitor for visitors that want to override all visit

Task-number: QTCREATORBUG-23591
Change-Id: I682a30d0b08b6c929739fd0e339ef6fbde3eb630
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
This commit is contained in:
Fawzi Mohamed
2020-02-28 17:51:32 +01:00
parent a24dead5f6
commit b09a48599e
88 changed files with 5290 additions and 4350 deletions

View File

@@ -59,6 +59,8 @@ private:
bool visit(AST::NumericLiteral *ast) override;
bool visit(AST::StringLiteral *ast) override;
void throwRecursionDepthError() override;
struct AnalysisData
{
AnalysisData() : m_ranking(0), m_hasMatch(false) {}
@@ -71,12 +73,12 @@ private:
};
void processSchema(AST::Node *ast);
bool proceedCheck(Utils::JsonValue::Kind kind, const AST::SourceLocation &location);
bool proceedCheck(Utils::JsonValue::Kind kind, const SourceLocation &location);
AnalysisData *analysis();
Document::Ptr m_doc;
AST::SourceLocation m_firstLoc;
SourceLocation m_firstLoc;
Utils::JsonSchema *m_schema;
QStack<AnalysisData> m_analysis;
};