From ee3c71df7b0a091b078b9b6cbdf60d8f79d95913 Mon Sep 17 00:00:00 2001 From: Erik Verbruggen Date: Mon, 27 Jul 2009 16:11:40 +0200 Subject: Added utility methods firstSourceLocation/lastSourceLocation methods to UiImport and UiImportList. --- src/declarative/qml/parser/qmljsast_p.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/declarative/qml/parser/qmljsast_p.h b/src/declarative/qml/parser/qmljsast_p.h index 9745153..ee2f472 100644 --- a/src/declarative/qml/parser/qmljsast_p.h +++ b/src/declarative/qml/parser/qmljsast_p.h @@ -2291,6 +2291,12 @@ public: : fileName(0), importUri(uri), importId(0) { kind = K; } + virtual SourceLocation firstSourceLocation() const + { return importToken; } + + virtual SourceLocation lastSourceLocation() const + { return semicolonToken; } + virtual void accept0(Visitor *visitor); // attributes @@ -2323,6 +2329,21 @@ public: previous->next = this; } + virtual SourceLocation firstSourceLocation() const + { + if (import) return import->firstSourceLocation(); + else return SourceLocation(); + } + + virtual SourceLocation lastSourceLocation() const + { + for (const UiImportList *it = this; it; it = it->next) + if (!it->next && it->import) + return it->import->lastSourceLocation(); + + return SourceLocation(); + } + UiImportList *finish() { UiImportList *head = next; -- cgit v0.12