summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/Symbol.h
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@nokia.com>2009-07-28 16:34:15 +0200
committerErik Verbruggen <erik.verbruggen@nokia.com>2009-07-28 16:34:15 +0200
commit26267c03445266233159b2f61bbc3a4d5864c01a (patch)
tree8b7536d8f41fea63adc180d56830a73aae1192ad /src/shared/cplusplus/Symbol.h
parenta9b521f80af025ac11f9735fc070606952894b60 (diff)
downloadqt-creator-26267c03445266233159b2f61bbc3a4d5864c01a.tar.gz
Improved ObjC parsing, and added semantic checks.
Diffstat (limited to 'src/shared/cplusplus/Symbol.h')
-rw-r--r--src/shared/cplusplus/Symbol.h23
1 files changed, 22 insertions, 1 deletions
diff --git a/src/shared/cplusplus/Symbol.h b/src/shared/cplusplus/Symbol.h
index 403deceb12..c34416078d 100644
--- a/src/shared/cplusplus/Symbol.h
+++ b/src/shared/cplusplus/Symbol.h
@@ -75,7 +75,8 @@ public:
enum Visibility {
Public,
Protected,
- Private
+ Private,
+ Package
};
public:
@@ -209,6 +210,18 @@ public:
/// Returns true if this Symbol is a ForwardClassDeclaration.
bool isForwardClassDeclaration() const;
+ /// Returns true if this Symbol is a Objective-C Class definition.
+ bool isObjCClass() const;
+
+ /// Returns true if this Symbol is a Objective-C Class forward declaration.
+ bool isObjCForwardClassDeclaration() const;
+
+ /// Returns true if this Symbol is a Objective-C Protocol definition.
+ bool isObjCProtocol() const;
+
+ /// Returns true if this Symbol is a Objective-C Protocol forward declaration.
+ bool isObjCForwardProtocolDeclaration() const;
+
virtual const ScopedSymbol *asScopedSymbol() const { return 0; }
virtual const Enum *asEnum() const { return 0; }
virtual const Function *asFunction() const { return 0; }
@@ -221,6 +234,10 @@ public:
virtual const Argument *asArgument() const { return 0; }
virtual const BaseClass *asBaseClass() const { return 0; }
virtual const ForwardClassDeclaration *asForwardClassDeclaration() const { return 0; }
+ virtual const ObjCClass *asObjCClass() const { return 0; }
+ virtual const ObjCForwardClassDeclaration *asObjCForwardClassDeclaration() const { return 0; }
+ virtual const ObjCProtocol *asObjCProtocol() const { return 0; }
+ virtual const ObjCForwardProtocolDeclaration *asObjCForwardProtocolDeclaration() const { return 0; }
virtual ScopedSymbol *asScopedSymbol() { return 0; }
virtual Enum *asEnum() { return 0; }
@@ -234,6 +251,10 @@ public:
virtual Argument *asArgument() { return 0; }
virtual BaseClass *asBaseClass() { return 0; }
virtual ForwardClassDeclaration *asForwardClassDeclaration() { return 0; }
+ virtual ObjCClass *asObjCClass() { return 0; }
+ virtual ObjCForwardClassDeclaration *asObjCForwardClassDeclaration() { return 0; }
+ virtual ObjCProtocol *asObjCProtocol() { return 0; }
+ virtual ObjCForwardProtocolDeclaration *asObjCForwardProtocolDeclaration() { return 0; }
/// Returns this Symbol's type.
virtual FullySpecifiedType type() const = 0;