summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/ASTVisitor.cpp
diff options
context:
space:
mode:
authorRoberto Raggi <roberto.raggi@nokia.com>2009-03-06 10:20:15 +0100
committerRoberto Raggi <roberto.raggi@nokia.com>2009-03-06 10:45:41 +0100
commit66a3e71579c4ea629f31284e1d36604a214324d5 (patch)
treee8d185a7c151feef164e6ee3ee35133e82ccf34a /src/shared/cplusplus/ASTVisitor.cpp
parent5e3921d2bd81e1bf35c5d754b69e2074398ba243 (diff)
downloadqt-creator-66a3e71579c4ea629f31284e1d36604a214324d5.tar.gz
Added ASTVisitor::getTokenStartPosition() and ASTVisitor::getTokenEndPosition().
Diffstat (limited to 'src/shared/cplusplus/ASTVisitor.cpp')
-rw-r--r--src/shared/cplusplus/ASTVisitor.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/shared/cplusplus/ASTVisitor.cpp b/src/shared/cplusplus/ASTVisitor.cpp
index bee79230ea..2cc3d218c5 100644
--- a/src/shared/cplusplus/ASTVisitor.cpp
+++ b/src/shared/cplusplus/ASTVisitor.cpp
@@ -69,6 +69,9 @@ Control *ASTVisitor::control() const
TranslationUnit *ASTVisitor::translationUnit() const
{ return _control->translationUnit(); }
+const Token &ASTVisitor::tokenAt(unsigned index) const
+{ return translationUnit()->tokenAt(index); }
+
int ASTVisitor::tokenKind(unsigned index) const
{ return translationUnit()->tokenKind(index); }
@@ -87,10 +90,22 @@ NumericLiteral *ASTVisitor::numericLiteral(unsigned index) const
StringLiteral *ASTVisitor::stringLiteral(unsigned index) const
{ return translationUnit()->stringLiteral(index); }
+void ASTVisitor::getPosition(unsigned offset,
+ unsigned *line,
+ unsigned *column,
+ StringLiteral **fileName) const
+{ translationUnit()->getPosition(offset, line, column, fileName); }
+
void ASTVisitor::getTokenPosition(unsigned index,
unsigned *line,
unsigned *column,
StringLiteral **fileName) const
{ translationUnit()->getTokenPosition(index, line, column, fileName); }
+void ASTVisitor::getTokenStartPosition(unsigned index, unsigned *line, unsigned *column) const
+{ getPosition(tokenAt(index).begin(), line, column); }
+
+void ASTVisitor::getTokenEndPosition(unsigned index, unsigned *line, unsigned *column) const
+{ getPosition(tokenAt(index).end(), line, column); }
+
CPLUSPLUS_END_NAMESPACE