aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/3rdparty/cplusplus/Names.h
diff options
context:
space:
mode:
authorPrzemyslaw Gorszkowski <pgorszkowski@gmail.com>2013-04-10 23:30:18 +0200
committerErik Verbruggen <erik.verbruggen@digia.com>2013-04-19 12:14:56 +0200
commit080bf4ecb8b7b70d6410e3342e37dacd5aef8ff3 (patch)
treeafee321dc0eff8017c0a4e3243bf64aefa901581 /src/libs/3rdparty/cplusplus/Names.h
parenta2b2857b44d6f6bfdf9ab07a51165b56ef2705bf (diff)
C++: improve support for anonymous classes
Fix: * highlighting * find usages * follow symbol * code completion Task-number: QTCREATORBUG-6497 Task-number: QTCREATORBUG-8963 Task-number: QTCREATORBUG-3610 Task-number: QTCREATORBUG-7579 Change-Id: I3dcaf1c515d0199c3e6bee72284fbb40064686ee Reviewed-by: Petar Perisin <petar.perisin@gmail.com> Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Diffstat (limited to 'src/libs/3rdparty/cplusplus/Names.h')
-rw-r--r--src/libs/3rdparty/cplusplus/Names.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/libs/3rdparty/cplusplus/Names.h b/src/libs/3rdparty/cplusplus/Names.h
index e600ec1daf..855dd4987f 100644
--- a/src/libs/3rdparty/cplusplus/Names.h
+++ b/src/libs/3rdparty/cplusplus/Names.h
@@ -253,6 +253,29 @@ private:
bool _hasArguments;
};
+class CPLUSPLUS_EXPORT AnonymousNameId: public Name
+{
+public:
+ AnonymousNameId(unsigned classTokenIndex);
+ virtual ~AnonymousNameId();
+
+ unsigned classTokenIndex() const;
+
+ virtual const Identifier *identifier() const;
+ virtual bool isEqualTo(const Name *other) const;
+
+ virtual const AnonymousNameId *asAnonymousNameId() const
+ { return this; }
+
+protected:
+ virtual void accept0(NameVisitor *visitor) const;
+
+private:
+ unsigned _classTokenIndex;
+};
+
+
+
} // namespace CPlusPlus
#endif // CPLUSPLUS_NAMES_H