diff options
author | Roberto Raggi <roberto.raggi@nokia.com> | 2009-03-04 11:47:30 +0100 |
---|---|---|
committer | Roberto Raggi <roberto.raggi@nokia.com> | 2009-03-04 11:47:30 +0100 |
commit | e253f393600e3b79338f0d5943928fea7999af24 (patch) | |
tree | f723173426e277790d0a8dca68d1ffb739b88c9c /src/libs/cplusplus/PreprocessorClient.h | |
parent | 08d0b03e70395c72b29906bc5dcfba68496a2ebc (diff) | |
download | qt-creator-e253f393600e3b79338f0d5943928fea7999af24.tar.gz |
Store the actual arguments of the macro expansions.
Diffstat (limited to 'src/libs/cplusplus/PreprocessorClient.h')
-rw-r--r-- | src/libs/cplusplus/PreprocessorClient.h | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/src/libs/cplusplus/PreprocessorClient.h b/src/libs/cplusplus/PreprocessorClient.h index 8a0fdcf930..632cb3b9d5 100644 --- a/src/libs/cplusplus/PreprocessorClient.h +++ b/src/libs/cplusplus/PreprocessorClient.h @@ -31,7 +31,7 @@ #define CPLUSPLUS_PP_CLIENT_H #include <CPlusPlusForwardDeclarations.h> -#include <QtGlobal> +#include <QVector> QT_BEGIN_NAMESPACE class QByteArray; @@ -42,6 +42,23 @@ namespace CPlusPlus { class Macro; +class CPLUSPLUS_EXPORT MacroArgumentReference +{ + unsigned _position; + unsigned _length; + +public: + MacroArgumentReference(unsigned position = 0, unsigned length = 0) + : _position(position), _length(length) + { } + + unsigned position() const + { return _position; } + + unsigned length() const + { return _length; } +}; + class CPLUSPLUS_EXPORT Client { Client(const Client &other); @@ -63,7 +80,9 @@ public: virtual void startExpandingMacro(unsigned offset, const Macro ¯o, - const QByteArray &originalTextt) = 0; + const QByteArray &originalText, + const QVector<MacroArgumentReference> &actuals + = QVector<MacroArgumentReference>()) = 0; virtual void stopExpandingMacro(unsigned offset, const Macro ¯o) = 0; |