From 66a3e71579c4ea629f31284e1d36604a214324d5 Mon Sep 17 00:00:00 2001 From: Roberto Raggi Date: Fri, 6 Mar 2009 10:20:15 +0100 Subject: Added ASTVisitor::getTokenStartPosition() and ASTVisitor::getTokenEndPosition(). --- src/shared/cplusplus/ASTVisitor.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/shared/cplusplus/ASTVisitor.cpp') 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 -- cgit v1.2.1